<SEC-DOCUMENT>0000950170-25-067195.txt : 20250508
<SEC-HEADER>0000950170-25-067195.hdr.sgml : 20250508
<ACCEPTANCE-DATETIME>20250508171019
ACCESSION NUMBER:		0000950170-25-067195
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		70
CONFORMED PERIOD OF REPORT:	20250331
FILED AS OF DATE:		20250508
DATE AS OF CHANGE:		20250508

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			TREX CO INC
		CENTRAL INDEX KEY:			0001069878
		STANDARD INDUSTRIAL CLASSIFICATION:	LUMBER & WOOD PRODUCTS (NO FURNITURE) [2400]
		ORGANIZATION NAME:           	04 Manufacturing
		EIN:				541910453
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1231

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

	BUSINESS ADDRESS:	
		STREET 1:		2500 TREX WAY
		CITY:			WINCHESTER
		STATE:			VA
		ZIP:			22601
		BUSINESS PHONE:		5405426300

	MAIL ADDRESS:	
		STREET 1:		2500 TREX WAY
		CITY:			WINCHESTER
		STATE:			VA
		ZIP:			22601
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>trex-20250331.htm
<DESCRIPTION>10-Q
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<!-- DFIN New ActiveDisclosure (SM) Inline XBRL Document - http://www.dfinsolutions.com/ -->
<!-- Creation Date :2025-05-08T10:09:55.9128+00:00 -->
<!-- Copyright (c) 2025 Donnelley Financial Solutions, Inc. All Rights Reserved. -->
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:nonNumeric="http://www.xbrl.org/dtr/type/non-numeric" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dei="http://xbrl.sec.gov/dei/2024" xmlns:us-gaap="http://fasb.org/us-gaap/2024" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:ecd="http://xbrl.sec.gov/ecd/2024" xmlns:enum2="http://xbrl.org/2020/extensible-enumerations-2.0" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2024-01-31" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:ecd-sub="http://xbrl.sec.gov/ecd-sub/2024" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2022-02-16" xmlns:srt="http://fasb.org/srt/2024" xmlns:trex="http://www.trex.com/20250331" xmlns:utr="http://www.xbrl.org/2009/utr">
 <head>
  <title>10-Q</title>
  <meta http-equiv="Content-Type" content="text/html"/>
 </head>
 <body style="padding:8px;margin:auto!important;z-index:0;position:relative;">
  <div style="display:none;"><ix:header><ix:hidden><ix:nonNumeric id="F_ded215b6-37cd-4991-8790-74c9fb020b2b" name="dei:CurrentFiscalYearEndDate" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146">--12-31</ix:nonNumeric><ix:nonNumeric id="F_dcf2b160-10b6-455c-b6c6-5edda43af83c" name="dei:DocumentFiscalPeriodFocus" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146">Q1</ix:nonNumeric><ix:nonNumeric id="F_463e3b21-f4ce-44a4-b55e-18a9bb49ea96" name="dei:AmendmentFlag" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" format="ixt:fixed-false">false</ix:nonNumeric><ix:nonNumeric id="F_ba4d21e7-0677-44c4-a4ef-e4679251c230" name="dei:EntityCentralIndexKey" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146">0001069878</ix:nonNumeric><ix:nonFraction id="F_b7e61823-97e7-444e-9fc4-c40e75afd10b" name="us-gaap:CommitmentsAndContingencies" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" unitRef="U_USD" xsi:nil="true"></ix:nonFraction><ix:nonFraction id="F_3578d316-0cf8-4ba9-8eba-9f4cac69b3e4" name="us-gaap:CommitmentsAndContingencies" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" unitRef="U_USD" xsi:nil="true"></ix:nonFraction><ix:nonFraction id="F_e82e3e21-2405-4a65-a1b8-84024eabffa2" name="us-gaap:NumberOfReportableSegments" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" unitRef="U_Segment" decimals="INF" format="ixt:num-dot-decimal">1</ix:nonFraction><ix:nonNumeric id="F_293c138a-edf1-46a4-8a7f-330a4eb82af0" name="us-gaap:AccountingStandardsUpdateExtensibleList" contextRef="C_5fe36b10-f630-489b-aec6-dc7119a79c01">http://fasb.org/us-gaap/2024#AccountingStandardsUpdate202307Member</ix:nonNumeric><ix:nonNumeric id="F_e2aa5d31-7ed7-42b1-955d-2a49e48c0b78" name="us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9">http://www.trex.com/20250331#AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty</ix:nonNumeric><ix:nonNumeric id="F_ec91e9ce-d153-4e5e-aa4a-835f2d40fa80" name="us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d">http://www.trex.com/20250331#AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty</ix:nonNumeric><ix:nonNumeric id="F_b690300c-0564-496f-a12d-3468f401e2cd" name="us-gaap:ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration" contextRef="C_f743b696-54dc-4203-bd4a-0991a2693a79">http://fasb.org/us-gaap/2024#BlackScholesMertonModelMember</ix:nonNumeric><ix:nonNumeric id="F_71bdfe16-c7bd-4372-91d0-8fa8ccf132d3" name="us-gaap:OpenTaxYear" contextRef="C_bda99a3c-d935-4091-b20f-e8e636e0aa86">2020 2021 2022 2023 2024</ix:nonNumeric><ix:nonNumeric id="F_abeb9af2-c314-4509-a5bf-4f65d81e3fad" name="us-gaap:SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146">http://www.trex.com/20250331#PresidentAndChiefExecutiveOfficerMember</ix:nonNumeric></ix:hidden><ix:references><link:schemaRef xlink:type="simple" xlink:href="trex-20250331.xsd"/></ix:references><ix:resources><xbrli:context id="C_80baee2f-7e29-45b0-b70b-ac4ed431ae07"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:PerformanceBasedRestrictedStockAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-01-01</xbrli:startDate><xbrli:endDate>2023-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_84a9dff0-8921-4b51-bd6e-5954972fb9b7"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_8d7f1229-5195-47d8-8fa9-df23f0a0b68c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="trex:AgreementAxis">trex:FifthAmendmentAndRestatedAgreementMember</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_8e7a9ef9-30fb-4364-9d1f-9b06b42b6548"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:SurfaceFlakingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_93a5cdf3-f382-4f23-928e-36fc0fb1d4a8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_93c9cbbc-a9c1-4b81-a782-12dd2e6a7acf"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="trex:AgreementAxis">trex:CreditAgreementSecondAmendmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-10-10</xbrli:startDate><xbrli:endDate>2024-10-10</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_952dd5fd-f70a-4adf-8a70-3e58962bf2a6"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="trex:AgreementAxis">trex:CreditAgreementSecondAmendmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-10-10</xbrli:startDate><xbrli:endDate>2024-10-10</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_971d16a1-e6c4-4c7e-adf7-a972fcbb0bbf"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</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_9915ab83-de30-458e-824c-8c26ea72826b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:StockAppreciationRightsSARSMember</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_99f7d79c-e877-4fa5-b338-9b14b5bad898"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_9e6647df-2091-42e7-a3a1-417f8a828b33"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:ProductWarrantyMember</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_a1adc46c-ad6d-46d9-81b6-36cb27a462ff"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_a1c92c4d-427a-4d44-be00-f1bce5512360"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:PerformanceBasedRestrictedStockUnitsMember</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_a4862091-976f-417e-bd09-7de4d4cf93c2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_a5412fc4-d105-41f3-8c38-18b8d0c20227"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_a59a28f8-7444-4c8e-b5b3-6ec3f5aa21fa"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</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_adbf5788-67b1-46fa-b100-cc206bffbf94"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="trex:AgreementAxis">trex:CreditAgreementSecondAmendmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-10</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_aecbc23d-299b-47de-8108-584ea6fc66e4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:StockAppreciationRightsSARSMember</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_b031ebd8-ee85-4cc0-b03c-4b2d240d49db"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_b0f907b9-5f76-4a7b-938c-3aacc09ca10d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_b108950e-4905-4cc7-8ea2-f7bbb9eea98d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:EmployeeStockPurchasePlanMember</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_b2989125-46c1-4c05-bbdd-d8bd2b6c3c1e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockMember</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_b52c11ea-f54a-4a7c-9334-a80a4881334a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_ba829936-7fa8-404a-9514-8c950eb52cdf"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_bda99a3c-d935-4091-b20f-e8e636e0aa86"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:InternalRevenueServiceIRSMember</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_c72848d0-e167-49ed-aee9-d59f11c79b11"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancingReceivablePortfolioSegmentAxis">us-gaap:ResidentialPortfolioSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_c84c44b6-a340-4f24-8662-14255ab724c7"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:PerformanceBasedRestrictedStockAndrestrictedStockunitsMember</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_cd01721e-3168-412e-8fae-9083688209e1"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_d01351bb-f834-4793-bab7-1481202ca75e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:StockAppreciationRightsMember</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_d652431e-2d22-4305-bdfc-61faa29fe0e6"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">trex:TwoThousandFourteenStockIncentivePlanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_ddc4dbae-5041-4b42-8dc8-63e5332d6df4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:TimeBasedRestrictedStockUnitsMember</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_de09c54a-bfa7-4fd5-9769-18acb4be47cb"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_df820518-7eeb-44b0-8e9f-5576b691afbc"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_e06b18df-a7c6-4f04-88b3-bd30896c3598"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_e3feb751-d453-475a-a7fa-eaa73967baff"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_ea205a13-9bb6-4a00-b70a-a25ec263eb02"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_ee91a715-ec00-4f31-8cae-c2482ddce973"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="trex:AgreementAxis">trex:CreditAgreementSecondAmendmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-10-10</xbrli:startDate><xbrli:endDate>2024-10-10</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_f1fd57c9-5905-4cc5-bd50-cffe8a2ad329"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GuaranteeObligationsByNatureAxis">trex:CommercialUseMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SupplyCommitmentAxis">trex:ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember</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_f6b42be6-496b-4f49-b6d8-be98c482f21a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:TimeBasedRestrictedStockandRestrictedstockUnitsMember</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_f743b696-54dc-4203-bd4a-0991a2693a79"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockAppreciationRightsSARSMember</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_f92fe0b1-93df-4ed6-9f4f-7be715202df2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:PerformanceBasedRestrictedStockAdjustmentMember</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_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_fc0236c7-d228-424d-acc6-7a7793eec1e2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_fc885d73-bdbe-4b1c-a129-ec6764fcad9d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</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_fdba3cdf-18f8-4b3e-a8cc-7b89cf63fec1"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">trex:TwoThousandTwentyThreeStockRepurchaseProgramMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-05-04</xbrli:startDate><xbrli:endDate>2023-05-04</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_000977a8-6a3d-4ec8-8991-fa651366adfd"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SupplyCommitmentAxis">trex:ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">trex:EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:GuaranteeObligationsByNatureAxis">trex:ResidentialUseMember</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_00a7e601-2c4d-4de3-9982-eb44ea16f244"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</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_0586004d-8591-4787-b1d5-73f9f03270ba"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_06216a84-367d-453b-97af-0e5db4ae9937"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GuaranteeObligationsByNatureAxis">trex:ResidentialUseMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SupplyCommitmentAxis">trex:ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember</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_07abb3c3-6df5-4ba7-b094-f458952596a1"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="trex:AgreementAxis">trex:FifthAmendmentAndRestatedAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="trex:CreditFacilityOneAxis">trex:SwinglineLetterOfCreditMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-05-18</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_086b6cb3-f29b-4298-9cfe-b908216088ce"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="trex:AgreementAxis">trex:CreditAgreementSecondAmendmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-10</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_0a11d0ba-7d64-4bae-a644-803cfb6397ea"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:ProductWarrantyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_0a38ddf9-9952-4759-be86-f0e644141009"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="trex:AgreementAxis">trex:CreditAgreementSecondAmendmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-10-10</xbrli:startDate><xbrli:endDate>2024-10-10</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_0e4bce22-8cda-4cb9-bf6d-062535f9444e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_1042da33-40cf-4172-9d13-cbe43571d3a9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_1189355a-db46-40c0-bc46-fe832af80406"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="trex:CreditFacilityOneAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="trex:AgreementAxis">trex:FifthAmendmentAndRestatedAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-05-18</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_1444d23f-0baa-49e9-a9d3-8087a8ff104a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="trex:AgreementAxis">trex:CreditAgreementSecondAmendmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-10</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_160fc5cf-e7da-4528-8901-3fb706c9d7be"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SupplyCommitmentAxis">trex:ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:GuaranteeObligationsByNatureAxis">trex:ResidentialUseMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">trex:TranscendDeckingMember</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_1c48bdbb-950a-49a6-a18d-36a11886729a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_1ed0bdaf-302b-412b-9fde-6c43971a996a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockMember</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_20e88d50-db92-4dbb-b242-24b346809eca"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:PerformanceBasedRestrictedStockAndrestrictedStockunitsMember</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_21f532e7-6179-4e31-8bff-9c76efc3cee5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SupplyCommitmentAxis">trex:ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:GuaranteeObligationsByNatureAxis">trex:ResidentialUseMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">trex:SelectDeckingAndUniversalFasciaMember</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_224201fd-0c13-4d14-8ad7-8a27c05aadb9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="trex:AgreementAxis">trex:FifthAmendmentAndRestatedAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-05-18</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_235e72a1-2df5-4423-a57c-d4fc2831663b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:ProductWarrantyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_236f35f2-5fcc-46c3-beb9-5a5363691b17"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:SurfaceFlakingMember</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_26a957f0-4cb5-4f31-bb80-66bee2ce252c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_2dfdc400-8163-4b10-981d-1c0fea4a7a57"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_30aa8c2f-c604-4c0f-ae59-c6e9f26b2113"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GuaranteeObligationsByNatureAxis">trex:CommercialUseMember</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_31b4123d-22cf-4c7f-a15b-7682f885be6d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:PerformanceBasedRestrictedStockAdjustmentMember</xbrldi:explicitMember></xbrli:segment></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_32cb1923-a423-4669-a0b7-d92694543929"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:ProductWarrantyMember</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_339092ed-217a-4730-8c0d-5d5e4d97ef57"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:IndustrialRevenueBondsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_34213902-e621-4f3d-8d2c-cfc92fdbd907"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:TimeBasedRestrictedStockandRestrictedstockUnitsMember</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_355f7954-29d9-4933-84da-527c2dfd6b80"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_36f97051-5e0f-42a6-9cd7-ae441643d13e"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_3acb3ff4-cd1b-4533-b0bb-fc9957ba3cbd"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:EmployeeStockPurchasePlanMember</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_3bdbff76-38f1-4b53-ac1e-296051ee7de7"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_3beef847-3e50-4b98-bcde-845e6349e445"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:InternetDomainNamesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_3bf96245-d0e7-450e-a3d0-eba3a5504bbe"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_3d06506b-c99b-4e55-88e5-e7f9d2fa2640"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="trex:AgreementAxis">trex:FifthAmendmentAndRestatedAgreementMember</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_3ee415a4-a8cf-4322-b4d4-a55cfe02fe1d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_41999b6e-97c0-4570-8068-c29729dc4fcd"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_42ca4c73-90ef-4b90-b00d-126d90c60bd0"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FinancingReceivablePortfolioSegmentAxis">us-gaap:ResidentialPortfolioSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_4380ab5c-971c-4ab9-9e80-c371ba493920"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:ProductWarrantyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_43c80646-4a57-4515-bf97-c18c5396b55c"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_440056c2-fe18-4915-9a26-b32c5b13d469"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_467aa8b1-b247-4454-a59e-c4039b58e300"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:SurfaceFlakingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_46f48da5-041d-4ddf-8368-9aa80a1bec5a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</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_479b12da-f306-4c52-8211-3463e0b72884"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GuaranteeObligationsByNatureAxis">trex:ResidentialAndCommercialUseMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SupplyCommitmentAxis">trex:ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">trex:SignatureRailingMember</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_49f74ea5-7da7-46af-92ee-900ced9079bf"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2025-04-24</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_4b712b3f-0832-41c7-b1a1-4b22f5f05319"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:StockAppreciationRightsMember</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_4d15aea4-ff06-472f-b45a-3a2132c6ce83"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_4e36190e-5f50-4a3a-b077-02efb7ecc131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_4e657225-72cb-4527-a959-aed35dbd0e57"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="trex:AgreementAxis">trex:CreditAgreementSecondAmendmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingALoansMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-10-10</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_510b2854-e839-4877-a3fd-5bac350b0b37"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="trex:AgreementAxis">trex:FifthAmendmentAndRestatedAgreementMember</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_5b5827e5-9779-4bf2-80c4-7707e58e780b"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_5c21fb3f-d14b-4d2e-abf1-74d1a4c37a9a"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</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_5fe36b10-f630-489b-aec6-dc7119a79c01"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2024-10-01</xbrli:startDate><xbrli:endDate>2024-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_70f3b8e4-e6a4-4b5a-ac4f-c9f4a44c8cbe"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="trex:AgreementAxis">trex:CreditAgreementSecondAmendmentMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-10-10</xbrli:startDate><xbrli:endDate>2024-10-10</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="C_70f3dfb6-222c-452b-a042-5ff8d7c900d8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</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_713035c9-88eb-4178-861f-7d66792d62fe"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:SurfaceFlakingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_727b1285-ee45-495e-829c-bdb87118d3d5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:ProductWarrantyMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_74dbf428-7f53-41d2-945e-748db7ec532d"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:GuaranteeObligationsByNatureAxis">trex:CommercialUseMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">trex:SignatureRailingAndTranscendCladdingMember</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_75b5cb2b-a5f5-4fdd-805a-247c93d565e7"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:SurfaceFlakingMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="C_7c978468-c4fe-4b54-8c63-01aa42b959c2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">trex:TwoThousandTwentyThreeStockRepurchaseProgramMember</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_7d9f7f54-d825-4f56-ae1e-d69927ec5cc9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockAppreciationRightsSARSMember</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_7e158bcd-195f-4d12-b933-d56b8ae0fe81"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001069878</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:SurfaceFlakingMember</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:unit id="U_pure"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:unit id="U_UnitedStatesOfAmericaDollarsShare"><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="U_shares"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:unit id="U_USD"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:unit id="U_Retailer"><xbrli:measure>trex:Retailer</xbrli:measure></xbrli:unit><xbrli:unit id="U_Segment"><xbrli:measure>trex:Segment</xbrli:measure></xbrli:unit></ix:resources></ix:header></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;min-height:0.5in;position:relative;"></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="border-top:2.25pt double;padding-top:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:4pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:12pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">UNITED STATES</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:12pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:12pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">SECURITIES AND EXCHANGE COMMISSION</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:12pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:12pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Washington, D.C. 20549</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:12pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="border-top:0.75pt solid;margin-left:216pt;padding-top:1pt;font-size:10pt;margin-top:4pt;font-family:Times New Roman;margin-bottom:0;margin-right:3in;text-align:center;"><span style="white-space:pre-wrap;font-size:4pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:12pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">FORM </span><span style="font-size:12pt;font-family:Times New Roman;"><ix:nonNumeric id="F_af0eb4e6-6525-4db8-bef3-78628cbb66b0" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:DocumentType"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:12pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">10-Q</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:12pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="margin-left:216pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.75pt solid #000000;margin-right:3in;text-align:center;"><span style="white-space:pre-wrap;font-size:4pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:-24.5pt;padding-left:24.5pt;font-size:10pt;margin-top:4pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;"><ix:nonNumeric id="F_84660c06-e88b-47e8-97c3-0932c618d899" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:DocumentQuarterlyReport" format="ixt-sec:boolballotbox"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9746;</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">	</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:-24.5pt;padding-left:24.5pt;font-size:10pt;margin-top:4pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For the quarterly period ended </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_31f3437f-82ac-4456-ae23-5404c6195166" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:DocumentPeriodEndDate" format="ixt:date-monthname-day-year-en"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">March 31, </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_20280d43-6b8b-4857-9b36-aa4bdaca32f6" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:DocumentFiscalYearFocus"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2025</span></ix:nonNumeric></span></ix:nonNumeric></span></p><p style="text-indent:-24.5pt;padding-left:24.5pt;font-size:10pt;margin-top:4pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">OR</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:-24.5pt;padding-left:24.5pt;font-size:10pt;margin-top:4pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;"><ix:nonNumeric id="F_7367c751-d23b-4f49-8f0e-698e1c1220e4" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:DocumentTransitionReport" format="ixt-sec:boolballotbox"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9744;</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">	</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:-24.5pt;padding-left:24.5pt;font-size:10pt;margin-top:4pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For the transition period from                      to</span></p><p style="font-size:10pt;margin-top:4pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Commission File Number: </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_a4508086-9978-4967-9190-de63ccded2c0" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:EntityFileNumber"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">001-14649</span></ix:nonNumeric></span></p><p style="margin-left:216pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.75pt solid #000000;margin-right:3in;text-align:left;"><span style="white-space:pre-wrap;font-size:4pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><img src="img245582526_0.jpg" alt="img245582526_0.jpg" style="width:205px;height:128px;"/></p><p style="font-size:10pt;margin-top:4pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:12pt;font-family:Times New Roman;"><ix:nonNumeric id="F_86b0cc3c-c646-44dc-a6d2-1163eeeab120" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:EntityRegistrantName"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:12pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Trex Company, Inc.</span></ix:nonNumeric></span></p><p style="font-size:10pt;margin-top:4pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(Exact name of registrant as specified in its charter)</span></p><p style="margin-left:216pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.75pt solid #000000;margin-right:3in;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:6pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:4pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:50%;box-sizing:content-box;"/>
      <td style="width:50%;box-sizing:content-box;"/>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span><ix:nonNumeric id="F_6bffec9f-7623-4a1b-a9e5-84e4b44e2297" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:EntityIncorporationStateCountryCode" format="ixt-sec:stateprovnameen"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Delaware</span></ix:nonNumeric></span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span><ix:nonNumeric id="F_d4efb30a-8c1d-4efc-a49f-4701a3fa33a8" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:EntityTaxIdentificationNumber"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">54-1910453</span></ix:nonNumeric></span></p></td>
     </tr>
     <tr style="height:7pt;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(State or other jurisdiction of</span></p><p style="font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0.75pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">incorporation or organization)</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(I.R.S. Employer</span></p><p style="font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0.75pt;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Identification No.)</span></p></td>
     </tr>
     <tr style="height:12.25pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span><ix:nonNumeric id="F_8b3862be-aa6f-4867-91ef-1f10542b08d6" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:EntityAddressAddressLine1"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2500 Trex Way</span></ix:nonNumeric></span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0.75pt;text-align:center;"><span><ix:nonNumeric id="F_88552ce2-83ea-46fb-a2a0-26748060fc1f" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:EntityAddressCityOrTown"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Winchester</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">, </span><span><ix:nonNumeric id="F_975f7580-0691-42cd-bc3d-a4eec98495bb" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:EntityAddressStateOrProvince" format="ixt-sec:stateprovnameen"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Virginia</span></ix:nonNumeric></span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span><ix:nonNumeric id="F_27b2ccdb-7fcd-452b-b24e-34e9780762d8" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:EntityAddressPostalZipCode"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">22601</span></ix:nonNumeric></span></p></td>
     </tr>
     <tr style="height:7pt;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(Address of principal executive offices)</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:7.5pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(Zip Code)</span></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:4pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Registrant&#8217;s telephone number, including area code: (</span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_7599f30a-fc6e-4546-97b2-2093c9df0529" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:CityAreaCode"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">540</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">) </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_eef3ec06-3aa6-4b1e-bff5-03e567c4c097" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:LocalPhoneNumber"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">542-6300</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:4pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Not Applicable</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:7.5pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(Former name, former address and former fiscal year, if changed since last report)</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:7.5pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="margin-left:216pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.75pt solid #000000;margin-right:3in;text-align:center;"><span style="white-space:pre-wrap;font-size:4pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:4pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Securities registered pursuant to Section 12(b) of the Act:</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:4pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:0.275in;border-spacing:0;table-layout:auto;width:85.0%;border-collapse:separate;">
     <tr style="visibility:collapse;">
      <td style="width:24.36%;box-sizing:content-box;"/>
      <td style="width:25.22%;box-sizing:content-box;"/>
      <td style="width:50.42%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:9pt;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="border-top:0.5pt solid;padding-top:0in;border-right:0.5pt solid;border-left:0.5pt solid;padding-left:0.075in;vertical-align:top;padding-bottom:0in;border-bottom:0.5pt solid;padding-right:0.075in;"><p style="font-size:9pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Title of each class</span></p></td>
      <td style="border-top:0.5pt solid;padding-top:0in;border-right:0.5pt solid;padding-left:0.075in;vertical-align:top;padding-bottom:0in;border-bottom:0.5pt solid;padding-right:0.075in;"><p style="font-size:9pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Trading Symbol(s)</span></p></td>
      <td style="border-top:0.5pt solid;padding-top:0in;border-right:0.5pt solid;padding-left:0.075in;vertical-align:top;padding-bottom:0in;border-bottom:0.5pt solid;padding-right:0.075in;"><p style="font-size:9pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Name of each exchange on which registered</span></p></td>
     </tr>
     <tr style="height:9pt;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;border-right:0.5pt solid;border-left:0.5pt solid;padding-left:0.075in;vertical-align:top;padding-bottom:0in;border-bottom:0.5pt solid;padding-right:0.075in;"><p style="font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;"><ix:nonNumeric id="F_fb4582a0-75bb-4aaa-92be-ff5da383b891" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:Security12bTitle"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Common stock</span></ix:nonNumeric></span></p></td>
      <td style="padding-top:0in;border-right:0.5pt solid;padding-left:0.075in;vertical-align:top;padding-bottom:0in;border-bottom:0.5pt solid;padding-right:0.075in;"><p style="font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;"><ix:nonNumeric id="F_dbd84175-6332-4ab1-ad3e-5e145290db57" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:TradingSymbol"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">TREX</span></ix:nonNumeric></span></p></td>
      <td style="padding-top:0in;border-right:0.5pt solid;padding-left:0.075in;vertical-align:top;padding-bottom:0in;border-bottom:0.5pt solid;padding-right:0.075in;"><p style="font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="font-size:9pt;"><ix:nonNumeric id="F_e0c36ff8-eda4-4fb3-b6cf-2cb53a5e35c0" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:SecurityExchangeName" format="ixt-sec:exchnameen"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">New York Stock Exchange</span></ix:nonNumeric></span></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:4pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="x_________1"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">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.   </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_2dc15c4d-81ed-4a3e-9a1b-4c8503ce365a" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:EntityCurrentReportingStatus"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Yes</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  </span><span id="x________"></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9746;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">    No  </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9744;</span></p><p style="font-size:10pt;margin-top:4pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">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 during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).  </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_3d3eb7de-53fc-4978-8426-460d3378f9ec" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:EntityInteractiveDataCurrent"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Yes</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9746;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">    No </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9744;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:4pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company or an emerging growth company. See the definitions of &#8220;large accelerated filer,&#8221; &#8220;accelerated filer,&#8221; &#8220;smaller reporting company,&#8221; and &#8220;emerging growth company&#8221; in Rule 12b-2 of the Exchange Act.:</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:4pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-size:9pt;font-family:Times New Roman;"><ix:nonNumeric id="F_c7a6eab1-68aa-4fde-a658-338e36d8c00f" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:EntityFilerCategory" format="ixt-sec:entityfilercategoryen"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Large accelerated filer</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9746;</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">    Accelerated filer  </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9744;</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  Non-accelerated filer  </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9744;</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Smaller reporting company  </span><span style="font-size:9pt;font-family:'Segoe UI Symbol',sans-serif;"><ix:nonNumeric id="F_a7d91a90-5d79-4aa9-962c-03561dee110c" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:EntitySmallBusiness" format="ixt:fixed-false"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9744;</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">  </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Emerging growth company  </span><span style="font-size:9pt;font-family:'Segoe UI Symbol',sans-serif;"><ix:nonNumeric id="F_97dae8c0-4fb7-412c-9ef9-7bccd361ad8c" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:EntityEmergingGrowthCompany" format="ixt-sec:boolballotbox"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9744;</span></ix:nonNumeric></span></p><p style="font-size:10pt;margin-top:4pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">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;white-space:pre-wrap;font-size:9pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9744;</span></p><p style="font-size:10pt;margin-top:4pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Indicate by check mark whether the registrant is a shell company (as defined by Rule 12b-2 of the Exchange Act):</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">    Yes </span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9744;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">   No  </span><span style="font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;"><ix:nonNumeric id="F_8d8391a8-eadd-4384-a8b8-207213551466" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="dei:EntityShellCompany" format="ixt:fixed-false"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:'Segoe UI Symbol',sans-serif;font-kerning:none;min-width:fit-content;">&#9746;</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:4pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The number of shares of the registrant&#8217;s common stock, par value $0.01 per share, outstanding at April 24, 2025 was </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_13264a8a-5963-464c-9f54-6792744a2672" contextRef="C_49f74ea5-7da7-46af-92ee-900ced9079bf" name="dei:EntityCommonStockSharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">107,227,048</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> shares.</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:4pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="border-top:2.25pt double;padding-top:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">TREX COMPANY, INC.</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">INDEX</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:10.1%;box-sizing:content-box;"/>
      <td style="width:83.82%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:5.08%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Page</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#part_i_financial_information"><span style="color:#0000ff;white-space:pre-wrap;font-weight:bold;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">PART I FINANCIAL INFORMATION</span></a></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;text-indent:12.25pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:12.25pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Item 1.</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_1_condensed_consolidated_financial"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Condensed Consolidated Financial Statements</span></a></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;text-indent:18pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:18pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td colspan="2" style="padding-top:0in;text-indent:28.8pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:28.8pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#statements_of_comprehensive_income"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Condensed Consolidated Statements of Comprehensive Income for the Three Months Ended March 31, 2025 and March 31, 2024 (unaudited)</span></a></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td colspan="2" style="padding-top:0in;text-indent:28.8pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:28.8pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:28.8pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:28.8pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td colspan="2" style="padding-top:0in;text-indent:28.8pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:28.8pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#consolidated_balance_sheets"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Condensed Consolidated Balance Sheets as of March 31, 2025 and December 31, 2024 (unaudited)</span></a></p></td>
      <td style="padding-top:0in;text-indent:28.8pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:28.8pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td colspan="2" style="padding-top:0in;text-indent:28.8pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:28.8pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:28.8pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:28.8pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td colspan="2" style="padding-top:0in;text-indent:28.8pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:28.8pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#consolidated_statements_of_changes_in"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Condensed Consolidated Statements of Changes in Stockholders&#8217; Equity for the Three Months Ended March 31, 2025 and March 31, 2024 (unaudited)</span></a></p></td>
      <td style="padding-top:0in;text-indent:28.8pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:28.8pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td colspan="2" style="padding-top:0in;text-indent:28.8pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:28.8pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:28.8pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:28.8pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td colspan="2" style="padding-top:0in;text-indent:28.8pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:28.8pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#consolidated_statements_of_cash_flows"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Condensed Consolidated Statements of Cash Flows for the Three Months Ended March 31, 2025 and March 31, 2024 (unaudited)</span></a></p></td>
      <td style="padding-top:0in;text-indent:28.8pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:28.8pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td colspan="2" style="padding-top:0in;text-indent:28.8pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:28.8pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:28.8pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:28.8pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td colspan="2" style="padding-top:0in;text-indent:28.8pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:28.8pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#notes_to_condensed_consolidated_fin"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Notes to Condensed Consolidated Financial Statements (unaudited)</span></a></p></td>
      <td style="padding-top:0in;text-indent:28.8pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:28.8pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;text-indent:18pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:18pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;text-indent:12.25pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:12.25pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Item 2.</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_2_managements_discussion"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</span></a></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">15</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;text-indent:12.25pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:12.25pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;text-indent:12.25pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:12.25pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Item 3.</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_3_quantitative_and_qualitative"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Quantitative and Qualitative Disclosures About Market Risk</span></a></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">23</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;text-indent:12.25pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:12.25pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;text-indent:12.25pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:12.25pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Item 4.</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_4_controls_and_procedures"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Controls and Procedures</span></a></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">23</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;text-indent:18pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:18pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#part_ii_other_information"><span style="color:#0000ff;white-space:pre-wrap;font-weight:bold;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">PART II OTHER INFORMATION</span></a></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">24</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;text-indent:18pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:18pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;text-indent:12.25pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:12.25pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Item 1.</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_1_legal_proceedings"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Legal Proceedings</span></a></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">24</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;text-indent:12.25pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:12.25pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;text-indent:12.25pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:12.25pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Item 2.</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_2_unregistered_sales_of_equity"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Unregistered Sales of Equity Securities and Use of Proceeds</span></a></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">24</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;text-indent:12.25pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:12.25pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;text-indent:12.25pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:12.25pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Item 5.</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_5_other_information"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Other Information</span></a></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">24</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;text-indent:12.25pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:12.25pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;text-indent:12.25pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:12.25pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Item 6.</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="#item_6_exhibits"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Exhibits</span></a></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">25</span></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">1</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="part_i_financial_information"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">PA</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">RT I</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">FINANCIAL INFORMATION</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:-55.1pt;padding-left:55.1pt;font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_1_condensed_consolidated_financial"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Item 1. Condensed C</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">onsolidated Financial Statements</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">TREX COMPANY, INC.</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="statements_of_comprehensive_income"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Condensed Consolidated Sta</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">tements of Comprehensive Income</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(Unaudited)</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(In thousands, except share and per share data)</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:98.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:66.273%;box-sizing:content-box;"/>
      <td style="width:1.6%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:13.263%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.6%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:13.263%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31,</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net sales</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_cae72a51-3d59-474e-9ce3-fe9ea64d4d71" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">339,993</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_36132a3d-f7ba-40ec-9584-cd791013ba8a" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">373,635</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cost of sales</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ef8a7c6c-8e36-4abf-9910-00eb11b6bf84" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:CostOfGoodsAndServicesSold" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">202,262</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_74e79a5e-0f8c-4442-b6ef-171a28851c93" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:CostOfGoodsAndServicesSold" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">204,023</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Gross profit</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_191e5a15-5c8d-490f-8f03-f7443e5a8ffb" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:GrossProfit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">137,731</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_adbc377c-fe02-4f6d-a2e8-0b56e1ad9015" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:GrossProfit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">169,612</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Selling, general and administrative expenses</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_28415fd4-d2af-419e-a4ad-2c56378cc6ea" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:SellingGeneralAndAdministrativeExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">56,068</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1fef855a-1645-4301-bfa3-5b35aff4aae5" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:SellingGeneralAndAdministrativeExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">50,600</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Income from operations</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_39086301-3947-405c-99b8-bf8eadef6acb" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">81,663</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2aa04700-0d6b-4993-b059-60a02119be6d" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:OperatingIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">119,012</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest expense (income), net</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_33b9e11e-81d9-4924-aa03-f147f2bd8812" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:InterestIncomeExpenseNet" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">76</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4d464f85-fbab-4f28-88b0-6759f7f6de99" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:InterestIncomeExpenseNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Income before income taxes</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e0331e36-ee50-4f9e-a56d-d8b6e0d84c9b" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">81,587</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_45ce90d3-a19c-4c18-ba8c-43606890d1ff" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">119,017</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Provision for income taxes</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_633598f3-c021-4f49-86e9-86befda6176d" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:IncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">21,153</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5829a910-e5bd-42fb-8c66-d526d06dcc58" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:IncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">29,947</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Net income</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_07d525b7-3c73-42c7-a4dc-094ce96fb471" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">60,434</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6c22bdf7-2ecf-4a36-be4d-79b303734057" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">89,070</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Basic earnings per common share</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3045dede-e0be-4779-b03c-3675a132f71f" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.56</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e83205bf-6394-43f3-9fd0-891b48a9c274" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.82</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Basic weighted average common shares outstanding</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f464f011-96e5-477c-8954-fc1c67de0b8d" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">107,180,665</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5dd4d14c-a013-4d2c-8120-e1effa4ab1fd" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">108,640,168</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Diluted earnings per common share</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_016b08e2-0fe9-4a38-bb8f-fe0ce944c23b" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.56</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9e694fd2-1789-4c0c-a135-da6ebb536063" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.82</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Diluted weighted average common shares outstanding</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_eb40adb1-e799-4ba2-b90c-9f5354c0869a" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">107,284,084</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5617f329-21d1-4660-a328-59947893264d" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">108,790,625</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Comprehensive income</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_66b513bd-477e-4434-a16a-20aa4f60bf02" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:ComprehensiveIncomeNetOfTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">60,434</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_aad9c28f-589a-4359-ac80-6f8b5a0e8349" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:ComprehensiveIncomeNetOfTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">89,070</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">See Notes to Condensed Consolidated Financial Statements (Unaudited).</span></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">TREX COMPANY, INC.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="consolidated_balance_sheets"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Condensed Consolid</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">ated Balance Sheets</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(In thousands, except share data)</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:66.993%;box-sizing:content-box;"/>
      <td style="width:1.62%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:12.883000000000001%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.62%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:12.883000000000001%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,<br/>2025</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31,<br/>2024</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(Unaudited)</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">ASSETS</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Current assets</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cash and cash equivalents</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_49f129f0-d64d-4800-a244-bb69e06c4891" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,963</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0f3124c4-34e6-4d00-bb22-658da738d766" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,292</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accounts receivable, net</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5ed018b8-41af-4419-84ce-be513874afcc" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:AccountsReceivableNetCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">391,064</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d183ac48-6a3b-4183-b300-115addd0afa0" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:AccountsReceivableNetCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">88,356</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Inventories</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_cb73f13b-6d54-45da-bc1e-3b789cff587c" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:InventoryNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">176,419</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_65c651f5-8c81-46be-8199-95291eee7a0c" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:InventoryNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">207,282</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Prepaid expenses and other assets</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_62bd4521-9dfc-42c0-a378-e94ff3b7038d" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">19,744</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_942284fb-562b-4c1d-b8be-9422354379c7" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">21,978</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total current assets</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3bbf3d12-266e-4f1f-9ce0-246082ae429f" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:AssetsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">592,190</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_790deee7-16b8-4198-b0ee-20de3f624da3" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:AssetsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">318,908</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Property, plant and equipment, net</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7c4d95bb-defe-4067-8347-1daec312787f" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:PropertyPlantAndEquipmentNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">967,276</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_44c72b8d-1ee6-4401-906d-a31c8439d5b0" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:PropertyPlantAndEquipmentNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">922,868</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating lease assets</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_29dab4c5-f8b7-4032-83b1-90d4f25973ac" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:OperatingLeaseRightOfUseAsset" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">49,976</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3a1705f2-56e2-4235-b106-5f6118e90003" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:OperatingLeaseRightOfUseAsset" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">52,195</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Goodwill and other intangible assets, net</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_73418705-04c3-4ac4-89de-e74d6cb4682c" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:IntangibleAssetsNetIncludingGoodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">23,529</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_fb6c9a19-af6b-43f8-bd6b-92cfb59776ca" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:IntangibleAssetsNetIncludingGoodwill" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">22,048</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other assets</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f056fc4f-81c9-4f8a-b1ef-59f49355de91" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:OtherAssetsNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">8,228</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f8946aeb-5163-4772-8eb5-cf5bf7a8cd33" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:OtherAssetsNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">8,279</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total assets</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c227ea6a-966f-4750-ba33-4900ddf2bc59" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:Assets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,641,199</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_696d3d20-8b92-4319-93ca-13c6ee8f1204" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:Assets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,324,298</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">LIABILITIES AND STOCKHOLDERS&#8217; EQUITY</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Current liabilities</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accounts payable</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8f477378-f989-4c00-8118-e7944e0e6802" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:AccountsPayableCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">45,576</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6a33d22c-657d-42c5-9ee7-97d18012ad8d" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:AccountsPayableCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">61,272</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accrued expenses and other liabilities</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f56aa8f8-3d8a-4ac6-877e-1a346b27d23d" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="trex:AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">105,427</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_da81f983-bd6f-4f0d-abd0-3e21c66fea10" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="trex:AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">72,879</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accrued warranty</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_809a9c0b-e7e0-4812-aa6b-165adbcfad0e" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:StandardProductWarrantyAccrualCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,611</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_dc1fea3c-ec43-4e82-8aaf-48f9e51e5e7a" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:StandardProductWarrantyAccrualCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,726</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Line of credit</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ee7bcfbf-f78d-4d2c-9572-415a8370b91a" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:LinesOfCreditCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">443,947</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2c905156-ed85-4e24-9e0a-3ad2f23b82de" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:LinesOfCreditCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">202,600</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total current liabilities</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c05c5ac1-4dde-47cf-9df1-c0ecfcfb12e1" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:LiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">601,561</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_992160cd-9ad5-4e3f-893c-bca6a797ba50" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:LiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">342,477</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Deferred income taxes</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d3f9f105-c8fa-4562-b2be-df60dc137795" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">56,032</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_18f21ef8-41da-4df1-a7d3-b7b2ad5066df" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">56,032</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating lease liabilities</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_435763f3-ec2d-4365-9a69-2d757a6464ab" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:OperatingLeaseLiabilityNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">39,788</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_81062589-158f-4fa1-b6da-b74abdf0ad9d" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:OperatingLeaseLiabilityNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">41,979</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Non-current accrued warranty</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f383910c-ddf7-443a-b137-a2c0005173f7" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:StandardProductWarrantyAccrualNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">17,180</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_04f34f60-a753-41f5-878e-e138751a8a97" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:StandardProductWarrantyAccrualNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">17,109</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other long-term liabilities</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1865a74c-68b7-49c1-bcd9-048a5524edf8" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:OtherLiabilitiesNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">16,559</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_060f92ec-c883-4e3e-9396-70350fbbd265" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:OtherLiabilitiesNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">16,559</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total liabilities</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d885028c-30a0-4dbb-9b18-171ae98e9708" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:Liabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">731,120</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_115e597d-78a5-49a7-af05-a54a2c16c335" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:Liabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">474,156</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Commitments and contingencies</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span><span style="-sec-ix-hidden:F_b7e61823-97e7-444e-9fc4-c40e75afd10b;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></span></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span><span style="-sec-ix-hidden:F_3578d316-0cf8-4ba9-8eba-9f4cac69b3e4;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></span></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Stockholders&#8217; equity</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Preferred stock, $</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8d08ef9c-3cb9-4bbb-bd22-1919424ebe8e" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:PreferredStockParOrStatedValuePerShare" unitRef="U_UnitedStatesOfAmericaDollarsShare" decimals="INF" format="ixt:num-dot-decimal"><ix:nonFraction id="F_ece707ea-68f9-4a99-8247-1165322a9d13" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:PreferredStockParOrStatedValuePerShare" unitRef="U_UnitedStatesOfAmericaDollarsShare" decimals="INF" format="ixt:num-dot-decimal">0.01</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;par value, </span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2bd1630b-acd3-4eed-a11f-4ae5a1cffbdc" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:PreferredStockSharesAuthorized" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal"><ix:nonFraction id="F_95373157-e971-4206-9756-54e30126e523" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:PreferredStockSharesAuthorized" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">3,000,000</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;shares authorized; </span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4e17f5e9-0b33-4875-8178-03b383422957" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:PreferredStockSharesIssued" unitRef="U_shares" decimals="INF" format="ixt-sec:numwordsen"><ix:nonFraction id="F_9afbc842-0a8d-4c3a-a776-674de057c364" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:PreferredStockSharesIssued" unitRef="U_shares" decimals="INF" format="ixt-sec:numwordsen"><ix:nonFraction id="F_b17d1091-6206-42d6-9ea6-11dfaa847a02" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:PreferredStockSharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt-sec:numwordsen"><ix:nonFraction id="F_710db7a0-ba7c-47e3-8d57-94b2325e2d61" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:PreferredStockSharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt-sec:numwordsen">none</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;issued and<br/>&#160;&#160;&#160;outstanding</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7bec6163-930d-401f-af3f-104f52561194" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:PreferredStockValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_741fea2a-d4d6-447c-b745-436ce4c9b2a3" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:PreferredStockValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Common stock, $</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8a0ef79f-cb58-4468-8c0a-cfa9fb9a8a6a" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:CommonStockParOrStatedValuePerShare" unitRef="U_UnitedStatesOfAmericaDollarsShare" decimals="INF" format="ixt:num-dot-decimal"><ix:nonFraction id="F_50f75237-a741-4be0-a3ea-576290a1c72d" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:CommonStockParOrStatedValuePerShare" unitRef="U_UnitedStatesOfAmericaDollarsShare" decimals="INF" format="ixt:num-dot-decimal">0.01</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;par value, </span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f7519c21-6c1a-4c47-93e9-9b5d42819cae" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:CommonStockSharesAuthorized" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal"><ix:nonFraction id="F_aae300c8-c6ea-41ce-9a01-1a4dfeadcbb0" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:CommonStockSharesAuthorized" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">360,000,000</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;shares authorized; </span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_35ac86ff-779f-4513-8d7c-19bc2383d9f0" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:CommonStockSharesIssued" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">141,170,958</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;and<br/>&#160;&#160;&#160;</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_350319cf-005c-40f6-aa81-ac6700905470" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:CommonStockSharesIssued" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">141,098,251</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;shares issued and </span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6110e492-7ace-4f64-93e1-702401d50f90" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:CommonStockSharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">107,227,012</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;and </span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_701e348b-16fb-422a-8d1e-9f13417b4035" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:CommonStockSharesOutstanding" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">107,154,305</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;shares outstanding, at<br/>&#160;&#160;&#160;March 31, 2025 and December 31, 2024, respectively</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6ef4ec8f-a33c-4509-975e-f29544368c21" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:CommonStockValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,412</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d29dc81c-6c8c-4410-a0bf-809b1112a594" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:CommonStockValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,411</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Additional paid-in capital</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_02c770a1-bcc7-4053-916b-797da7ef9c4f" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:AdditionalPaidInCapitalCommonStock" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">147,655</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9f07eddd-382c-4d09-a3eb-1fed673a5332" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:AdditionalPaidInCapitalCommonStock" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">148,153</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Retained earnings</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_10eb1433-d8fe-4001-91df-fccfb172664a" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:RetainedEarningsAccumulatedDeficit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,622,884</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0b2387ea-26bd-424f-b9ef-0aa54f8553fc" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:RetainedEarningsAccumulatedDeficit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,562,450</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Treasury stock, at cost, </span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_542401fb-3ef5-492e-95b4-8b32281842a1" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:TreasuryStockCommonShares" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">33,943,946</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;and </span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4ade6a81-1d76-43d8-9006-acb76c5c0f10" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:TreasuryStockCommonShares" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">33,943,946</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;shares at March 31, 2025 and<br/>&#160;&#160;&#160;December 31, 2024</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_04b28111-59c7-4213-84c5-aef96449393a" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:TreasuryStockValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">861,872</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2780b115-e81b-40f4-8269-7026d8c43394" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:TreasuryStockValue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">861,872</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total stockholders&#8217; equity</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_878f13a2-87e6-4452-9f12-8053863aa9bf" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">910,079</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2f2dbf62-0842-4a6f-a551-eaf05e01d642" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">850,142</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total liabilities and stockholders&#8217; equity</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_daa67254-24dc-4aa5-95ae-87ea74f0a4d6" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:LiabilitiesAndStockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,641,199</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5745687e-7d95-4eff-887f-c7715b2ab360" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:LiabilitiesAndStockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,324,298</ix:nonFraction></span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">See Notes to Condensed Consolidated Financial Statements (Unaudited).</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">3</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">TREX COMPANY, INC.</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="consolidated_statements_of_changes_in"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Condensed Consolidated State</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">ments of Changes in Stockholders&#8217; Equity</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(Unaudited)</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(In thousands, except share data)</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:28.594%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:8.038%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:7.039%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:7.039%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:6.599%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:7.459%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:7.039%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:7.199%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Common Stock</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Additional<br/>Paid-In</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Retained</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Treasury Stock</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Shares</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Amount</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Capital</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Earnings</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Shares</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Amount</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Balance, December 31, 2024</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_51ea792b-f401-471c-b9e9-e9d2458c6bba" contextRef="C_43c80646-4a57-4515-bf97-c18c5396b55c" name="us-gaap:SharesIssued" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">107,154,305</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_97bb4b99-e88e-496c-a79f-0b318de1ac7a" contextRef="C_43c80646-4a57-4515-bf97-c18c5396b55c" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,411</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a61e66f1-530d-40c5-95b1-293988638dc3" contextRef="C_3ee415a4-a8cf-4322-b4d4-a55cfe02fe1d" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">148,153</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5be9c961-886b-4a12-ae74-d361c001d6f8" contextRef="C_2dfdc400-8163-4b10-981d-1c0fea4a7a57" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,562,450</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0ab88906-8f12-41a8-b1ec-7ea22ccd5896" contextRef="C_0586004d-8591-4787-b1d5-73f9f03270ba" name="us-gaap:TreasuryStockCommonShares" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">33,943,946</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_27c659c7-ddda-4ab9-a87e-cceeb2a8c848" contextRef="C_0586004d-8591-4787-b1d5-73f9f03270ba" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">861,872</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0eed9de7-ce51-4902-92a3-014a3eeab2c9" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">850,142</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net income</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_dae30bb4-e9dd-431f-92d3-b676cbc0f94c" contextRef="C_41999b6e-97c0-4570-8068-c29729dc4fcd" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">60,434</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_47a95ada-6d29-4de2-84a3-dd22547914ca" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">60,434</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Employee stock plans</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_28eabc15-50fd-44df-a987-d69d094aabfa" contextRef="C_1c48bdbb-950a-49a6-a18d-36a11886729a" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">6,068</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_aa276299-1a52-4582-9db2-3c4e8d03943b" contextRef="C_3bf96245-d0e7-450e-a3d0-eba3a5504bbe" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">299</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b38e6187-36f2-4e65-abe0-79eba70ef08c" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">299</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Shares withheld for taxes on awards</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_eba1be4c-1715-47db-9606-05c9cf08c32b" contextRef="C_1c48bdbb-950a-49a6-a18d-36a11886729a" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">49,949</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_50fe5140-130e-46e3-b83c-fd314a5a3852" contextRef="C_3bf96245-d0e7-450e-a3d0-eba3a5504bbe" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,110</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_67042986-528d-46ba-8d44-43c185d382d2" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,110</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Stock-based compensation</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_323d9dda-bc69-4a5a-b804-9124c5105e1b" contextRef="C_1c48bdbb-950a-49a6-a18d-36a11886729a" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">116,588</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_edf121bb-2bf1-43d4-9270-61f0eadb6df5" contextRef="C_1c48bdbb-950a-49a6-a18d-36a11886729a" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a7053b11-01a1-4f6d-8a1b-13c129b11329" contextRef="C_3bf96245-d0e7-450e-a3d0-eba3a5504bbe" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,313</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e6e284c2-c6e8-461f-a694-803afbc8b0e1" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,314</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Balance, March 31, 2025</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c0e1109d-7293-447a-af44-6dfa4294713d" contextRef="C_99f7d79c-e877-4fa5-b338-9b14b5bad898" name="us-gaap:SharesIssued" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">107,227,012</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0a4a01f2-b621-47f7-b61f-2b686e5a29c7" contextRef="C_99f7d79c-e877-4fa5-b338-9b14b5bad898" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,412</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_21210c68-afed-413c-9e90-d4dade58af8b" contextRef="C_df820518-7eeb-44b0-8e9f-5576b691afbc" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">147,655</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_934566c0-84a6-4145-8ed0-fcd1e4817339" contextRef="C_a1adc46c-ad6d-46d9-81b6-36cb27a462ff" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,622,884</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ff7e9bd2-2533-4b36-895c-291e6309f160" contextRef="C_e06b18df-a7c6-4f04-88b3-bd30896c3598" name="us-gaap:TreasuryStockCommonShares" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">33,943,946</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_490589dd-ba66-484d-871f-bcaf16817a27" contextRef="C_e06b18df-a7c6-4f04-88b3-bd30896c3598" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">861,872</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_400c87b3-eaa7-4886-8252-7f3e054afc0d" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">910,079</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:28.594%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:8.038%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:7.039%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:7.039%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:6.599%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:7.459%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:7.039%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:7.199%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Common Stock</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Additional<br/>Paid-In</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Retained</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Treasury Stock</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Shares</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Amount</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Capital</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Earnings</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Shares</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Amount</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Balance, December 31, 2023</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_478a6162-26fb-4b3c-88a8-4f853d076228" contextRef="C_b031ebd8-ee85-4cc0-b03c-4b2d240d49db" name="us-gaap:SharesIssued" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">108,611,537</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5b42101a-e42b-4344-88d2-76e4401d45c7" contextRef="C_b031ebd8-ee85-4cc0-b03c-4b2d240d49db" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,410</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9f164f9e-16f5-410a-b665-e5c279f0305e" contextRef="C_ba829936-7fa8-404a-9514-8c950eb52cdf" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">140,157</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ced4ab77-b984-4c2d-8ca5-d3dddaf49b50" contextRef="C_440056c2-fe18-4915-9a26-b32c5b13d469" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,336,058</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1ff96f53-f53b-47ee-9bda-c050215523bf" contextRef="C_a5412fc4-d105-41f3-8c38-18b8d0c20227" name="us-gaap:TreasuryStockCommonShares" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">32,363,306</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_034bf186-0346-40b9-841d-443f3bcd7ef9" contextRef="C_a5412fc4-d105-41f3-8c38-18b8d0c20227" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">760,954</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_10feac33-e453-4e6a-9786-c55e2561e13c" contextRef="C_b52c11ea-f54a-4a7c-9334-a80a4881334a" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">716,671</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net income</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ad61c12a-aed1-41d1-b48a-e63ea197feb0" contextRef="C_36f97051-5e0f-42a6-9cd7-ae441643d13e" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">89,070</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_56c14323-8f65-43b4-8b15-740981b87280" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">89,070</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Employee stock plans</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_551d4a69-b3c8-4f0b-af4a-eba380d31805" contextRef="C_fc0236c7-d228-424d-acc6-7a7793eec1e2" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">5,640</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ff7ef244-03c7-4d6e-ac8a-4cd7fc7a1108" contextRef="C_355f7954-29d9-4933-84da-527c2dfd6b80" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">397</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a97eb257-475e-4c87-9d02-ad08467e246e" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">397</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Shares withheld for taxes on awards</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3467936e-7cdc-4b1c-8313-9c292f572ade" contextRef="C_fc0236c7-d228-424d-acc6-7a7793eec1e2" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">55,103</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e53bd8f7-3775-4a6b-ae2c-ff5fdd20910c" contextRef="C_355f7954-29d9-4933-84da-527c2dfd6b80" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,146</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8f7855ea-71f3-450c-8618-9e19b43ce47b" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,146</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Stock-based compensation</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d7e212a6-8335-41b5-b7f7-42a40823d196" contextRef="C_fc0236c7-d228-424d-acc6-7a7793eec1e2" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">130,683</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1168fd2c-27e2-4e14-8d29-b08a69b82860" contextRef="C_fc0236c7-d228-424d-acc6-7a7793eec1e2" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ad601b09-2984-446f-a2cf-24f27ade3d80" contextRef="C_355f7954-29d9-4933-84da-527c2dfd6b80" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,153</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e9b28b34-d195-442e-819f-3a835a5eb366" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,154</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Balance, March 31, 2024</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a7dba340-a651-417e-8c6f-0afa4815f198" contextRef="C_84a9dff0-8921-4b51-bd6e-5954972fb9b7" name="us-gaap:SharesIssued" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">108,692,757</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9091bd7d-6acf-43d2-80ec-d004912e5774" contextRef="C_84a9dff0-8921-4b51-bd6e-5954972fb9b7" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,411</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_426760a6-39c7-45b6-a7dc-d05d905bf40d" contextRef="C_70f3dfb6-222c-452b-a042-5ff8d7c900d8" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">138,561</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_bec0292b-bc2c-4452-a7d0-7d5f19bc05f7" contextRef="C_cd01721e-3168-412e-8fae-9083688209e1" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,425,128</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9def6770-003e-40e2-b845-1e242edd840e" contextRef="C_e3feb751-d453-475a-a7fa-eaa73967baff" name="us-gaap:TreasuryStockCommonShares" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">32,363,306</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:8pt;font-kerning:none;min-width:fit-content;">(</span><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b2093e86-5ee5-4b16-957a-9bbe15961f19" contextRef="C_e3feb751-d453-475a-a7fa-eaa73967baff" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">760,954</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="font-size:8pt;color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_480b0a06-5397-4ee5-961c-0777396769cc" contextRef="C_4d15aea4-ff06-472f-b45a-3a2132c6ce83" name="us-gaap:StockholdersEquity" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">804,146</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">See Notes to Condensed Consolidated Financial Statements (Unaudited).</span></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">4</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">TREX COMPANY, INC.</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="consolidated_statements_of_cash_flows"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Condensed Consolidated S</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">tatements of Cash Flows</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(Unaudited)</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(In thousands)</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:66.993%;box-sizing:content-box;"/>
      <td style="width:1.62%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:12.883000000000001%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.62%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:12.883000000000001%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31,</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">OPERATING ACTIVITIES</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net income</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e25dcb06-ef6b-4b2f-8d95-2388683a44e5" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:ProfitLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">60,434</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ae0ffa59-a6d0-491e-a86f-07af8f9f982d" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:ProfitLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">89,070</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Adjustments to reconcile net income to net cash used in operating activities:</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Depreciation and amortization</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8f846e65-8a90-4412-ae74-119e147f0109" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:DepreciationDepletionAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">14,249</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0570ee94-0f0b-46fa-b199-f09283e3beb8" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:DepreciationDepletionAndAmortization" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">14,154</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Deferred income taxes</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e7eda135-05ad-4009-bfb6-bd329c2c15f2" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:DeferredIncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_bd96ffca-6318-4f8b-99c9-d5f94eb0115b" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:DeferredIncomeTaxExpenseBenefit" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">5,212</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Stock-based compensation</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f92caa05-3f07-487a-afee-e4d60ec8c247" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,313</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_266127fd-e4d1-43a5-856b-1fbcc6e32511" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:ShareBasedCompensation" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,155</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(Gain)/Loss on disposal of property, plant and equipment</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_80c504be-2529-4f97-8cb5-c2858723df2e" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">57</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_10104bb3-cecb-4b0d-aa57-59346776b07e" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">2,122</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other non-cash adjustments</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_846adafd-aa27-4d15-843e-a4b19f4e82d5" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:OtherNoncashIncomeExpense" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">117</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_83470722-5fa4-412b-a82b-7a9c9ca5929c" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:OtherNoncashIncomeExpense" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">121</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Changes in operating assets and liabilities:</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;text-indent:30pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:30pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accounts receivable</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1a7c8499-2eff-441e-a116-4e9a5fef3631" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:IncreaseDecreaseInAccountsReceivable" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">302,708</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_305d929e-5d40-4cc0-ae4a-1494749d9d34" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:IncreaseDecreaseInAccountsReceivable" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">332,333</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;text-indent:30pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:30pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Inventories</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0d808266-9b5f-4842-8b6f-72c9ffe57212" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:IncreaseDecreaseInInventories" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">30,863</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_cb88856b-801a-44ce-bfdb-5ff1112de873" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:IncreaseDecreaseInInventories" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">16,796</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;text-indent:30pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:30pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Prepaid expenses and other assets</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a9a28549-cc4f-432c-88c5-bee058bdf2e8" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">2,161</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c3b61471-7228-43b5-a7db-7bad49fc803d" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">319</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;text-indent:30pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:30pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accounts payable</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6245bf89-010d-4d8a-ad08-fc865fa1667e" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:IncreaseDecreaseInAccountsPayable" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,187</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f0895acb-23d5-4c2e-b33b-984433ba08b4" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:IncreaseDecreaseInAccountsPayable" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">26,238</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;text-indent:30pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:30pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accrued expenses and other liabilities</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_42969d7a-3d64-42bc-84ce-2c0afbf940e4" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">15,278</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_48cd29cb-0d8e-4cb0-bbe9-085c06ec45e3" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">12,041</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;text-indent:30pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:30pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Income taxes receivable/payable</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6c840056-4122-4698-ac51-2cb401d88b61" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">19,150</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e95cdd3a-4374-408f-8175-827b5ae9b398" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">33,715</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Net cash used in operating activities</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_db8d83de-6aaa-4e8f-8c7a-c01543eea42b" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">154,013</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_13dae597-50d1-4492-a21f-0a59f1852c95" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">174,044</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">)</span></p></td>
     </tr>
     <tr style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">INVESTING ACTIVITIES</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Expenditures for property, plant and equipment</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d9ece2c9-6dea-497c-955b-0ede749ca9cb" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">79,486</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_88ccafb8-26ff-4495-99a7-5021ef161177" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">37,720</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Purchased intangibles</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_eac0e3dd-66ea-4b63-b1ce-9435f1914757" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:PaymentsToAcquireIntangibleAssets" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">635</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Proceeds from sales of property, plant and equipment</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_78047386-6a8f-4203-8b5f-1b280810f5b2" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">156</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_dd6c1d5b-8db1-453c-b061-a05699d3fc06" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">106</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Net cash used in investing activities</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_de7ccd86-3f12-42af-9d98-a34544985340" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">79,965</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6b7abbba-3a3f-477e-8f95-556bc8278bc5" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">37,614</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">)</span></p></td>
     </tr>
     <tr style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">FINANCING ACTIVITIES</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Borrowings under line of credit</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_58d3bcca-f913-4c71-8c11-f250d1658652" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:ProceedsFromLinesOfCredit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">257,047</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4f6684c9-904e-4f09-bc41-de8ad3179b09" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:ProceedsFromLinesOfCredit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">258,500</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Principal payments under line of credit</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5ea15473-4057-4921-8043-d5069fa45c53" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:RepaymentsOfLinesOfCredit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">15,700</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d73dbd24-ce56-423c-aaa6-5e8704ea3bd6" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:RepaymentsOfLinesOfCredit" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">41,000</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Repurchases of common stock</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c17160e8-5554-4fc0-ab5d-9e6e5fd1e94f" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:PaymentsForRepurchaseOfCommonStock" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,008</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3476d7df-7b10-4547-9ee1-c68ea74d0e99" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:PaymentsForRepurchaseOfCommonStock" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,145</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Proceeds from employee stock purchase and option plans</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0bd81937-b6c0-4a82-b447-5752438df4c5" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">300</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0195f8b9-7231-4b4e-8c07-35142c814114" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">397</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Financing costs</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_081a878b-9a67-464a-9e97-bf1129fd1831" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="trex:PaymentsForProceedsFromFinancingCosts" unitRef="U_USD" scale="3" decimals="-3" sign="-" format="ixt:num-dot-decimal">10</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_24069871-b765-4c47-9977-45bff3847b5e" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="trex:PaymentsForProceedsFromFinancingCosts" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Net cash provided by financing activities</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_28652354-e7a4-4630-975e-71de6eaaf202" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">237,649</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1a06c413-dfe9-4a84-9e3f-b63aa802de4b" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">212,752</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net increase in cash and cash equivalents</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_bdf2cd4c-2572-43b4-91d5-97ac2e9aeb01" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,671</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_31ed6b14-630f-40b9-add8-5cae555f1925" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,094</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cash and cash equivalents, beginning of period</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c5af05e6-dcf5-45e8-9a5d-b981b441a832" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,292</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_517d1efd-f2e9-484b-9aa8-80091f2608fd" contextRef="C_b52c11ea-f54a-4a7c-9334-a80a4881334a" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,959</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Cash and cash equivalents, end of period</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_45ca49d1-a3d9-4a99-89b7-16fd2d38af1a" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,963</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-weight:bold;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_69461493-3a0a-4036-94b8-44e86dcced80" contextRef="C_4d15aea4-ff06-472f-b45a-3a2132c6ce83" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,053</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Supplemental Disclosure:</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cash paid for interest, net of capitalized interest</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3ea93f31-9e8b-4d54-aee9-191138437eed" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:InterestPaidNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7f239333-f96a-43fb-b376-55a90cd86ac3" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:InterestPaidNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cash paid for income taxes, net</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4bd90991-ae1d-42b0-8937-b760ecabbfde" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:IncomeTaxesPaidNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,003</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_93278c8f-5090-4f74-a9bc-d0f05634623a" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:IncomeTaxesPaidNet" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,444</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Supplemental non-cash investing and financing disclosure:</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Capital expenditures in accounts payable and accrued expenses</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ee840f67-4887-4365-8d89-146ab9b859f3" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="trex:CapitalExpendituresInAccountsPayableAndAccruedExpenses" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">20,834</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_50c47efd-8fa3-4753-ad36-2cb5053ea8ba" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="trex:CapitalExpendituresInAccountsPayableAndAccruedExpenses" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">851</ix:nonFraction></span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">See Notes to Condensed Consolidated Financial Statements (Unaudited).</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">5</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">TREX COMPANY, INC.</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="notes_to_condensed_consolidated_fin"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Notes to Condensed Con</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">solidated Financial Statements</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For the Three Months Ended March 31, 2025 and March 31, 2024</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">(Unaudited)</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_98fd6ad4-679b-4885-acf7-373f293086d6" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:NatureOfOperations" escape="true"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">1.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">BUSINESS AND ORGANIZATION  </span></div></div><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Trex Company, Inc. (Trex or Company), is the world&#8217;s largest manufacturer of high-performance, low-maintenance wood-alternative decking and railing products and a leader in outdoor living products and accessories, marketed under the brand name Trex</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, with more than 30 years of product experience. A majority of its products are manufactured in a proprietary process that combines reclaimed wood fibers and scrap polyethylene. The Company is incorporated in Delaware. The principal executive offices are located at 2500 Trex Way, Winchester, Virginia 22601, and the telephone number at that address is (540) 542-6300. The Company operates in a </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_e82e3e21-2405-4a65-a1b8-84024eabffa2;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">single</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> reportable segment.</span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_baa3e67a-f2f9-408e-bb8c-ff34c1de0a7d" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" escape="true"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">2.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">BASIS OF PRESENTATION </span></div></div><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with accounting principles generally accepted in the United States for interim financial information and U.S. Securities and Exchange Commission instructions to Form 10-Q and Article 10 of Regulation S-X and, accordingly, the accompanying unaudited condensed consolidated financial statements do not include all of the information and notes required by accounting principles generally accepted in the United States for complete financial statements. In the opinion of management, all adjustments (consisting of normal and recurring adjustments, except as otherwise described herein) considered necessary for a fair presentation have been included in the accompanying unaudited condensed consolidated financial statements. Certain reclassifications have been made to prior period balances to conform to current year presentation. The unaudited condensed consolidated financial statements include the accounts of the Company for all periods presented.</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The unaudited consolidated results of operations for the three months ended March 31, 2025, are not necessarily indicative of the results that may be expected for the fiscal year ending December 31, 2025. The Company&#8217;s results of operations are affected by a number of factors, including, but not limited to, the cost to manufacture and distribute products, cost of raw materials, inflation, tariffs, consumer spending and preferences, interest rates, the impact of any supply chain disruptions, economic conditions, and/or any adverse effects from global health pandemics and geopolitical conflicts.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">These unaudited condensed consolidated financial statements should be read in conjunction with the audited consolidated financial statements and notes thereto included in the Annual Report of Trex Company, Inc. on Form 10-K for the year ended December 31, 2024, as filed with the U.S. Securities and Exchange Commission.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  </span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_36f5d767-618a-4c31-8619-ce6880874a90" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" escape="true"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">3.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">RECENTLY ADOPTED ACCOUNTING STANDARDS</span></div></div><p style="text-indent:36pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In November 2023, the Financial Accounting Standards Board (FASB) issued </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_293c138a-edf1-46a4-8a7f-330a4eb82af0;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Accounting Standards Update (ASU) No. 2023-07</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, &#8220;Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures.&#8221; The guidance requires disclosure of significant segment expenses which are regularly provided to the chief operating decision maker (CODM), the composition of and amount of other segment items, the CODM&#8217;s title and position within the organization, and how the CODM uses the reported measure(s) of segment&#8217;s profit or loss to assess the performance of the segment. In addition, on an interim basis, all segment profit or loss and asset disclosures currently required on an annual basis must be reported, as well as those required by Topic 280. The guidance allows for multiple measures of a segment&#8217;s profit or loss to be reported. Entities which have a single reportable segment must apply Topic 280 in its entirety. The guidance was effective for fiscal years beginning after December 15, 2023, and for interim periods beginning after December 15, 2024. Early adoption was permitted. Entities are required to apply the amendments of this update retrospectively for all prior periods presented in the financial statements. The Company </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_47441587-6799-4c22-aba5-fbb812cd9587" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted" format="ixt:fixed-true"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">adopted</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> the standard in the quarterly period ended December 31, 2024. The Company applied the standard retrospectively and accordingly, prior periods were adjusted. Adoption of this guidance </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_8282d8dd-7c7a-4b43-bbb0-62de3c71aaef" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:ChangeInAccountingPrincipleAccountingStandardsUpdateImmaterialEffect" format="ixt:fixed-true"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">did not impact</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> consolidated results of operations and financial position.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></ix:nonNumeric></div><div><ix:nonNumeric id="F_f2d16d0b-f4a0-4072-86f6-447099bd6811" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="trex:DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock" escape="true" continuedAt="F_f2d16d0b-f4a0-4072-86f6-447099bd6811_1"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">4.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NEW ACCOUNTING STANDARDS NOT YET ADOPTED</span></div></div><p style="text-indent:36pt;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In November 2024, the FASB issued ASU No. 2024-03, &#8220;Income Statement &#8211; Reporting Comprehensive Income &#8211; Disaggregation Disclosures.&#8221; This guidance requires more detailed disclosure about the types of expenses presented within the expense captions of the financial statements. Specifically, disclosure of purchases of inventory, employee compensation, depreciation, and intangible asset amortization are required on both an interim and annual basis. In addition, a qualitative description of remaining amounts in relevant expense captions which have not separately been disaggregated will be required on an interim and annual basis. On an annual basis, disclosure of an entity&#8217;s definition of selling expenses and the amount of selling expenses is required. The amendments to this update are effective for annual reporting periods beginning after December 15, 2026, and interim periods</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></ix:nonNumeric></div></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">6</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="font-size:10pt;font-family:Times New Roman;"><ix:continuation id="F_f2d16d0b-f4a0-4072-86f6-447099bd6811_1"><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">beginning after December 15, 2027. Early adoption of this update is permitted. The amendments to this update should be applied prospectively to financial statements issued for reporting periods after the effective date of the update or retrospectively to any or all prior periods presented in the financial statements. The Company believes adoption will result in expanded financial statement footnote disclosure but does not believe adoption of this update will have a material impact on its consolidated results of operations. The Company is continuing to evaluate the impacts of adoption.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:36pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In December 2023, the FASB issued ASU No. 2023-09, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">&#8220;Income Taxes (Topic 740): Improvements to Income Tax Disclosures.&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> The guidance requires public entities to disclose additional categories of information related to federal, state, and foreign income taxes and additional details related to reconciling items should they meet a quantitative threshold. The guidance requires disclosure of income taxes paid (net of refunds received) disaggregated by federal, state, and foreign taxes and to disaggregate the information by jurisdiction based on quantitative thresholds. The guidance is effective for fiscal year beginning after December 15, 2024. Early adoption was permitted. The guidance should be applied on a prospective basis, retrospective application is permitted. The Company does not expect adoption of the guidance to have a material effect on its consolidated results of operations and financial position.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></ix:continuation></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_2bd15c3c-526e-4c86-b881-ed99b52f4fd7" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:InventoryDisclosureTextBlock" escape="true"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">5.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">INVENTORIES </span></div></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_898d0b00-f673-49e3-ba28-1c42645655e0" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" escape="true"><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Inventories valued at LIFO (last-in, first-out), consist of the following (in thousands):</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  </span></p><p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"/>
          <td style="width:1.62%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:12.883000000000001%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:1.62%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:12.883000000000001%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,<br/>2025</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31,<br/>2024</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Finished goods</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_10d5eb45-2a3d-4317-a273-cc5b3b20ba4f" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:InventoryFinishedGoods" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">151,077</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e0f0e0cf-434c-4d4f-896b-3a6bd7551c4f" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:InventoryFinishedGoods" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">183,670</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Raw materials</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_276a5871-c7b4-4a14-89b7-b9a2ce1100bc" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:InventoryRawMaterials" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">75,011</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4a92158a-78ab-4903-92df-48d7a0e523d9" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:InventoryRawMaterials" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">73,281</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total FIFO (first-in, first-out) inventories</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c8c1db55-1165-43ad-9328-e2cbb1e2e55f" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:InventoryGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">226,088</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8672f276-bd09-4072-964b-b980a2f59ba2" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:InventoryGross" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">256,951</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Reserve to adjust inventories to LIFO value</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2ac5d465-5cc6-450c-adea-d958ad747677" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:InventoryLIFOReserve" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">49,669</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c5360034-4cf3-4597-a8d9-a55e006fdc7f" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:InventoryLIFOReserve" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">49,669</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total LIFO inventories</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1286700c-0f7f-4227-8167-25c0c44cf257" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:LIFOInventoryAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">176,419</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_423d10b1-ea63-4e21-becf-e2af21a7195a" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:LIFOInventoryAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">207,282</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table></ix:nonNumeric></div><p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company utilizes the LIFO method of accounting, which generally provides for the matching of current costs with current revenues. However, under the LIFO method, reductions in annual inventory balances may cause a portion of the Company&#8217;s cost of sales to be based on historical costs rather than current year costs (LIFO liquidation). Reductions in interim inventory balances expected to be replenished by year-end do not result in a LIFO liquidation. Accordingly, interim LIFO calculations are based, in part, on management&#8217;s estimates of expected year-end inventory levels and costs and may differ from actual results. Since inventory levels and costs are subject to factors beyond management&#8217;s control, interim results are subject to the final year-end LIFO inventory valuation. There were no LIFO inventory liquidations or related impact on the cost of sales in the three months ended March 31, 2025.</span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_3d2df289-f471-4cd8-bef7-85f20224725a" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="trex:PrepaidAndOtherCurrentAssetsDisclosureTextBlock" escape="true"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">6.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">PREPAID EXPENSES AND OTHER ASSETS</span></div></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_60e2c7b3-c020-4907-9242-cf87432a7ac1" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="trex:PrepaidExpenseAndOtherAssetsCurrentTableTextBlock" escape="true"><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Prepaid expenses and other assets consist of the following (in thousands):</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"/>
          <td style="width:1.62%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:12.883000000000001%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:1.62%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:12.883000000000001%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,<br/>2025</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31,<br/>2024</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Prepaid expenses</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f67890bb-8c73-4609-b4f0-44db74bd6517" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:PrepaidExpenseCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">19,242</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_fd887154-aa47-42dc-a26f-8887d276b410" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:PrepaidExpenseCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">21,353</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3304db21-c8c4-4bba-a35d-e10f7da04e8a" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:OtherAssetsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">502</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ae86bef5-98ce-4d3e-b9e5-bfe34b394b65" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:OtherAssetsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">625</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total prepaid expenses and other assets</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3367cb3b-5cae-4446-b1ad-1f801cb5fc8c" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">19,744</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_afd1348d-73e5-4226-8935-bd4e141ee350" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">21,978</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table></ix:nonNumeric></div></ix:nonNumeric></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_8e26c1a1-b6a8-4f13-812e-4a1292662afb" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock" escape="true"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">7.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">GOODWILL AND OTHER INTANGIBLE ASSETS, NET  </span></div></div><p style="text-indent:22.5pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The carrying amount of goodwill at March 31, 2025, and December 31, 2024, was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6295b331-5b8f-49c6-a064-6c32a52cc5ed" contextRef="C_42ca4c73-90ef-4b90-b00d-126d90c60bd0" name="us-gaap:Goodwill" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal"><ix:nonFraction id="F_be5407ba-a04e-4861-ba51-7f5f9a8a0e06" contextRef="C_c72848d0-e167-49ed-aee9-d59f11c79b11" name="us-gaap:Goodwill" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">14.2</ix:nonFraction></ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million. The Company&#8217;s intangible assets consist of domain names and internal use software. At March 31, 2025, and December 31, 2024, intangible assets were $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c558e6a3-1f89-4c5e-b480-f313fd572db0" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:IntangibleAssetsGrossExcludingGoodwill" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">12.2</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_3e25a845-2fb1-4855-9374-8baffe9718e8" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:IntangibleAssetsGrossExcludingGoodwill" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">10.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million and accumulated amortization was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_93dcc8e4-39f2-48a1-a06a-ebdd416b183f" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">2.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_772f876a-63c8-4782-90af-f4818d13bad6" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">2.8</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, respectively. Intangible asset amounts were determined based on the estimated economics of the asset and are amortized over the estimated useful lives on a straight-line basis over </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_b2b4629f-78d8-422a-a54f-f181c37eab45" contextRef="C_3beef847-3e50-4b98-bcde-845e6349e445" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">15</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years for domain names and </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_f902a9d8-bb59-4e09-8b2a-d7d300829297" contextRef="C_0e4bce22-8cda-4cb9-bf6d-062535f9444e" name="us-gaap:FiniteLivedIntangibleAssetUsefulLife" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">10</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years for internal use software, which approximates the pattern in which the economic benefits are expected to be received. The Company evaluates the recoverability of intangible assets periodically and considers events or circumstances that may warrant revised estimates of useful lives or that may indicate an impairment. Intangible asset amortization expense for the three months ended March 31, 2025, and March 31, 2024, was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_90965f46-6d1a-4420-80f2-d2d233591e72" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:AmortizationOfIntangibleAssets" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1ba7b7b4-580a-4d85-8345-add8fa78be40" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:AmortizationOfIntangibleAssets" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></ix:nonNumeric></div></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">7</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div><ix:nonNumeric id="F_bcd17f52-827e-425b-8289-4cb5808912ff" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" escape="true"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">8.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">ACCRUED EXPENSES AND OTHER LIABILITIES</span></div></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_03d80905-8d3d-4093-ae5a-21d8b7c88f64" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="trex:ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock" escape="true" continuedAt="F_03d80905-8d3d-4093-ae5a-21d8b7c88f64_1"><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Accrued expenses and other liabilities consist of the following (in thousands):</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"/>
          <td style="width:1.62%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:12.883000000000001%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:1.62%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:12.883000000000001%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,<br/>2025</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31,<br/>2024</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Sales and marketing</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_707faa5c-7f2d-4584-8f3f-1e618f7bf942" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:AccruedMarketingCostsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">39,522</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_25ea19b2-3312-4b9e-85dd-880d7dc94b56" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:AccruedMarketingCostsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">22,874</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Income taxes</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e582986f-904e-4f48-8d1a-146e38fc0381" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:AccruedIncomeTaxesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">20,067</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_cd5430ae-46a0-4a29-bf87-bdfc8b2e33c8" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:AccruedIncomeTaxesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">917</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Compensation and benefits</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b36a3b85-a2dd-46fd-92b2-ddc988de42e0" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">14,600</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c50f8f75-a583-4329-9a6d-4f117f1326f3" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">16,132</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span><span style="-sec-ix-hidden:F_e2aa5d31-7ed7-42b1-955d-2a49e48c0b78;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating</span></span></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span><span><span style="-sec-ix-hidden:F_ec91e9ce-d153-4e5e-aa4a-835f2d40fa80;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">lease liabilities</span></span></span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e7c90d13-f11c-4be4-a57d-c8afb2881bf2" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:OperatingLeaseLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">11,093</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8bac3c3d-ded4-470d-9332-459a472bc2f8" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:OperatingLeaseLiabilityCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">10,800</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Capital projects</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_37ce3309-95ca-4a65-8682-6a8a8704df3e" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="trex:AccruedCapitalProjectsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">8,216</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a2c413a7-7e48-4fe4-8f49-1fb8da3fe29e" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="trex:AccruedCapitalProjectsCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13,274</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Manufacturing costs</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_93f2f641-aa86-4b8a-ac67-41208ab72ab5" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="trex:AccruedManufacturingExpensesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,000</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_99cf0e0f-8b89-40e5-b6cd-66fe6e6d7306" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="trex:AccruedManufacturingExpensesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,904</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9e9858c3-77c6-4e1d-84e2-14aebe5b9aab" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:OtherAccruedLiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,929</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_76805ce9-40e2-4aa1-90c5-5e5f5a36bb99" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:OtherAccruedLiabilitiesCurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">5,978</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total accrued expenses and other liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_512332a1-0411-4445-bd99-09910b02d3a3" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="trex:AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">105,427</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_20a6d9be-81ea-430d-88b7-4b5e22b95491" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="trex:AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">72,879</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table></ix:nonNumeric></div></ix:nonNumeric></div><div><ix:continuation id="F_03d80905-8d3d-4093-ae5a-21d8b7c88f64_1"></ix:continuation></div><p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div><ix:nonNumeric id="F_55614800-4fa6-4262-9c5f-6133c2c66b93" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:DebtDisclosureTextBlock" escape="true" continuedAt="F_55614800-4fa6-4262-9c5f-6133c2c66b93_1"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">9.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">DEBT </span></div></div><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Revolving Credit Facility</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;text-decoration:underline solid;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Indebtedness prior to October 10, 2024.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> On May 18, 2022, the Company entered into a Credit Agreement (Credit Agreement) with certain lending parties thereto (Lenders) to amend and restate the Fourth Amended and Restated Credit Agreement dated as of November 5, 2019. Under the Credit Agreement, the Lenders agreed to provide the Company with one or more Revolving Loans in a collective maximum principal amount of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_089366be-8582-41ab-961c-76704296e340" contextRef="C_224201fd-0c13-4d14-8ad7-8a27c05aadb9" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" unitRef="U_USD" decimals="0" format="ixt:num-dot-decimal">400,000,000</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> (Loan Limit) throughout the term, which ends </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_1e0bf918-15bc-4579-9ed2-68e8bd372ae8" contextRef="C_510b2854-e839-4877-a3fd-5bac350b0b37" name="us-gaap:LineOfCreditFacilityExpirationDate1" format="ixt:date-monthname-day-year-en"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">May 18, 2027</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> (Term). Included within the Loan Limit are sublimits for a Letter of Credit facility in an amount not to exceed $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0912dc8e-3838-4a7f-aa73-e061e4aa3efb" contextRef="C_1189355a-db46-40c0-bc46-fe832af80406" name="trex:LineOfCreditFacilityAdditionalBorrowingCapacity" unitRef="U_USD" decimals="0" format="ixt:num-dot-decimal">60,000,000</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">; and Swing Line Loans in an aggregate principal amount at any time outstanding not to exceed $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_aa39c47a-9861-4608-9b02-a8a88bc09512" contextRef="C_07abb3c3-6df5-4ba7-b094-f458952596a1" name="trex:LineOfCreditFacilityAdditionalBorrowingCapacity" unitRef="U_USD" decimals="0" format="ixt:num-dot-decimal">20,000,000</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">. The Revolving Loans, the Letter of Credit facility and the Swing Line Loans are for the purpose of raising working capital and supporting general business operations.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">On December 22, 2022, the Company entered into a First Amendment to the Credit Agreement (First Amendment). As a part of the First Amendment, the Credit Agreement was amended and restated to provide for an additional Revolving B Loan (as hereinafter defined). Under the First Amendment, the Lenders agreed to provide the Company with a Revolving B Loan consisting of one or more revolving loans in a collective maximum principal amount of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_fad49a7b-bc98-4b51-a3da-f67e08636128" contextRef="C_de09c54a-bfa7-4fd5-9769-18acb4be47cb" name="us-gaap:LineOfCredit" unitRef="U_USD" decimals="0" format="ixt:num-dot-decimal">150,000,000</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> (Revolving B Loan Limit) throughout the term, which ended December 22, 2024 (Revolving B Loan Term). Previously, under the Credit Agreement, there was no Revolving B Loan. The First Amendment also provided that TD Bank, N.A. would serve as Syndication Agent.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In conjunction with the First Amendment, on December 22, 2022, the Credit Agreement was amended and restated to refer to the original loan as the Revolving A Loan. The amended and restated Credit Agreement was made an Exhibit A to the First Amendment. All of the terms of the Credit Agreement apply to the Revolving B Loan.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The amended Credit Agreement provides the Company, in the aggregate, the ability to borrow an amount up to the Revolving A Loan Limit during the Revolving A Loan Term (which ends May 18, 2027) and Revolving B Loan Limit during the Revolving B Loan Term. The Company is not obligated to borrow any amount under the revolving loans. Within the respective loan limit, the Company may borrow, repay and reborrow at any time or from time to time while the notes issued pursuant to the Credit Agreement are in effect.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Base Rate Loans (as defined in the Credit Agreement) under the Revolving A Loan and the Swing Line Loans accrue interest at the Base Rate plus the Applicable Rate (as defined in the Credit Agreement) and Term SOFR Loans for the Revolving Loans accrue interest at the rate per annum equal to the sum of Term SOFR for such interest period plus the Applicable Rate (as defined in the Credit Agreement). The Base Rate for any day is a fluctuating rate per annum equal to the highest of (a) </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_34d5f957-06b6-4780-816a-37495fb29e55" contextRef="C_8d7f1229-5195-47d8-8fa9-df23f0a0b68c" name="us-gaap:DebtInstrumentDescriptionOfVariableRateBasis"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">the Federal Funds Rate plus </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ed2828e5-3eba-4ad6-8739-eb2cb26cecbf" contextRef="C_8d7f1229-5195-47d8-8fa9-df23f0a0b68c" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" unitRef="U_pure" scale="-2" decimals="4" format="ixt:num-dot-decimal">0.50</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, (b) the rate of interest in effect for such day as publicly announced from time to time by BOA as its prime rate, and (c) </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_b66741c4-a9bf-4105-ad09-44b24b917965" contextRef="C_3d06506b-c99b-4e55-88e5-e7f9d2fa2640" name="us-gaap:DebtInstrumentDescriptionOfVariableRateBasis"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">the Term SOFR plus </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_9474a9aa-573e-43ba-97e9-aa7baa2812f6" contextRef="C_3d06506b-c99b-4e55-88e5-e7f9d2fa2640" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">1.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">% </span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">subject to certain interest rate floors. Repayment of all then outstanding principal, interest, fees and costs is due at the end of the Term.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">With respect to Revolving B Loans (as defined in the First Amendment), for any day, the rate per annum is a tiered pricing based upon the Consolidated Debt to Consolidated EBITDA Ratio. The applicable rate for Revolving B Loans that are Base Rate Loans range between </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f81c0f2a-7bca-455a-948d-4ee7b178c52d" contextRef="C_93a5cdf3-f382-4f23-928e-36fc0fb1d4a8" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" unitRef="U_pure" scale="-2" decimals="4" format="ixt:num-dot-decimal">1.20</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">% and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_219e552d-4cc5-4785-becc-6754c5b9e20b" contextRef="C_a4862091-976f-417e-bd09-7de4d4cf93c2" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" unitRef="U_pure" scale="-2" decimals="4" format="ixt:num-dot-decimal">2.15</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">% and the applicable rate for Revolving B Loans that are Term SOFR/Term SOFR Daily Floating Rate range between </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0ea10ef1-039b-4b58-bda9-9bd393c1a83b" contextRef="C_971d16a1-e6c4-4c7e-adf7-a972fcbb0bbf" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" unitRef="U_pure" scale="-2" decimals="4" format="ixt:num-dot-decimal">0.20</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">% and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a8c6286c-153d-4038-8e61-3203f2d7b5d5" contextRef="C_00a7e601-2c4d-4de3-9982-eb44ea16f244" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" unitRef="U_pure" scale="-2" decimals="4" format="ixt:num-dot-decimal">1.15</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Under the terms of the Security and Pledge Agreement, the Company, subject to certain permitted encumbrances, as collateral security for the above-stated loans and all other present and future indebtedness of the Company owing to the Lenders grants a continuing security interest in certain collateral described and defined in the Security and Pledge Agreement but excluding the Excluded Property (as defined in the Security and Pledge Agreement).</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></ix:nonNumeric></div></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">8</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="font-size:10pt;font-family:Times New Roman;"><ix:continuation id="F_55614800-4fa6-4262-9c5f-6133c2c66b93_1"><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;text-decoration:underline solid;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Indebtedness on and after October 10, 2024.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> On October 10, 2024, the Company, entered into a Second Amendment to the Credit Agreement (Second Amendment) with certain lending parties thereto (Lenders) to amend that Credit Agreement dated as of May 18, 2022, as amended by that certain First Amendment dated as of December 22, 2022.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Second Amendment provides the Company with Revolving A Loans in the maximum principal amount of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_980d2fd3-7bee-4bb6-b7f3-9fded0a47e71" contextRef="C_4e657225-72cb-4527-a959-aed35dbd0e57" name="us-gaap:LineOfCredit" unitRef="U_USD" decimals="0" format="ixt:num-dot-decimal">400,000,000</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> (Revolving A Loans), Revolving B Loans in the maximum principal amount of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8d60985e-7c96-45e5-815f-d3ce59cef251" contextRef="C_086b6cb3-f29b-4298-9cfe-b908216088ce" name="us-gaap:LineOfCredit" unitRef="U_USD" decimals="0" format="ixt:num-dot-decimal">150,000,000</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> (Revolving B Loans), and Letters of Credit and Swing Line Loans (as defined in the Credit Agreement). The Second Amendment extends the maturity date of the Revolving B Loans from December 22, 2024 to </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_558ce618-bf8c-4ad7-acbe-f5ccc0a66a1c" contextRef="C_0a38ddf9-9952-4759-be86-f0e644141009" name="us-gaap:DebtInstrumentMaturityDate" format="ixt:date-monthname-day-year-en"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">December 22, 2026</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Base Rate Loans (as defined in the Credit Agreement) under the Revolving A Loan and the Swing Line Loans accrue interest at the Base Rate plus the Applicable Rate (as defined in the Credit Agreement) and Term SOFR Loans for the Revolving Loans accrue interest at the rate per annum equal to the sum of Term SOFR for such interest period plus the Applicable Rate (as defined in the Credit Agreement). The Base Rate for any day is a fluctuating rate per annum equal to the highest of (a) </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_80c266f4-ec52-4e45-907b-26e77a7e154d" contextRef="C_ee91a715-ec00-4f31-8cae-c2482ddce973" name="us-gaap:DebtInstrumentDescriptionOfVariableRateBasis"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">the Federal Funds Rate plus </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_dc730068-2270-4351-ace1-701c818e7f71" contextRef="C_ee91a715-ec00-4f31-8cae-c2482ddce973" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" unitRef="U_pure" scale="-2" decimals="4" format="ixt:num-dot-decimal">0.50</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, (b) the rate of interest in effect for such day as publicly announced from time to time by BOA as its prime rate, and (c) </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_1bb924f0-9fd4-4a98-8479-d61e45a87930" contextRef="C_93c9cbbc-a9c1-4b81-a782-12dd2e6a7acf" name="us-gaap:DebtInstrumentDescriptionOfVariableRateBasis"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">the Term SOFR plus </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_fe67d804-f166-41e2-b793-6c62a95cea30" contextRef="C_93c9cbbc-a9c1-4b81-a782-12dd2e6a7acf" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">1.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> subject to certain interest rate floors. Repayment of all then outstanding principal, interest, fees and costs is due at the end of the Term (as defined in the Credit Agreement).</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">With respect to Revolving B Loans (as defined in the Credit Agreement), for any day, the rate per annum is a tiered pricing based upon the Consolidated Debt to Consolidated EBITDA Ratio. The applicable rate for Revolving B Loans that are Base Rate Loans range between </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1e33e901-4e7a-46fa-bd29-72effe6c0502" contextRef="C_adbf5788-67b1-46fa-b100-cc206bffbf94" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" unitRef="U_pure" scale="-2" decimals="4" format="ixt:num-dot-decimal">0.20</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">% and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_efff235f-e054-43b8-b470-ce071fbd547f" contextRef="C_1444d23f-0baa-49e9-a9d3-8087a8ff104a" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" unitRef="U_pure" scale="-2" decimals="4" format="ixt:num-dot-decimal">1.15</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%. and the applicable rate for Revolving B Loans that are Term SOFR/Term SOFR Daily Floating Rate range between </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_62543f6b-9f8c-4b8e-b641-4d928acd1852" contextRef="C_952dd5fd-f70a-4adf-8a70-3e58962bf2a6" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" unitRef="U_pure" scale="-2" decimals="4" format="ixt:num-dot-decimal">1.20</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">% and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_82dec59c-a06b-4a66-a5ee-a6fb9f42ce15" contextRef="C_70f3b8e4-e6a4-4b5a-ac4f-c9f4a44c8cbe" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" unitRef="U_pure" scale="-2" decimals="4" format="ixt:num-dot-decimal">2.15</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%.</span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company had $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f359b44c-c7ba-4eec-acc1-684e9f31cbf5" contextRef="C_ea205a13-9bb6-4a00-b70a-a25ec263eb02" name="us-gaap:LinesOfCreditCurrent" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">443.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million in borrowings outstanding under its revolving credit facility and available borrowing capacity of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5aacf244-0273-48b0-a2a0-1a50270e67f1" contextRef="C_ea205a13-9bb6-4a00-b70a-a25ec263eb02" name="us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">106.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million at March 31, 2025. The weighted average interest rate on the revolving credit facility was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_cc7a4ef8-bdbd-4db6-9076-a9e2d8bcf5a8" contextRef="C_ea205a13-9bb6-4a00-b70a-a25ec263eb02" name="us-gaap:DebtWeightedAverageInterestRate" unitRef="U_pure" scale="-2" decimals="4" format="ixt:num-dot-decimal">5.27</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">% as of March 31, 2025.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:18pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Compliance with Debt Covenants and Restrictions</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Pursuant to the terms of the Credit Agreement, the Company is subject to certain loan compliance covenants. The Company was in compliance with all covenants as of March 31, 2025. Failure to comply with the financial covenants could be considered a default of repayment obligations and, among other remedies, could accelerate payment of any amounts outstanding.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></ix:continuation></div><div><ix:nonNumeric id="F_013c0196-f04c-4ed7-8817-3636579b6276" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:LesseeOperatingLeasesTextBlock" escape="true" continuedAt="F_013c0196-f04c-4ed7-8817-3636579b6276_1"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">10.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">LEASES </span></div></div><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company leases manufacturing and training facilities, storage warehouses, office space, and certain office and plant equipment under various operating leases. The Company&#8217;s operating leases have remaining lease terms of up to </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_ffc69ec1-e763-44d3-8434-5db1febadd21" contextRef="C_4e36190e-5f50-4a3a-b077-02efb7ecc131" name="us-gaap:LessorOperatingLeaseTermOfContract" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">10</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years. Lease terms may include options to extend or terminate the lease when it is reasonably certain that the Company will exercise that option.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For the three months ended March 31, 2025 and March 31, 2024, total operating lease expense was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_db4ee929-aaa8-4bfc-b638-0751074f9022" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:OperatingLeaseCost" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">3.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_332c3a3a-a3f7-4d14-98fa-474b3b407251" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:OperatingLeaseCost" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">2.0</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, respectively. The weighted average remaining lease term at March 31, 2025 and December 31, 2024 was </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_f9d237c8-b081-4ed1-9713-1d34147bb78f" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">6.1</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years and </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_9c05b254-eaaf-4e17-830b-6ead0fa82d4e" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">6.3</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years, respectively. The weighted average discount rate at March 31, 2025 and December 31, 2024 was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_cddf7c9e-867c-492d-9e89-3ffbf1182556" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" unitRef="U_pure" scale="-2" decimals="INF" format="ixt:num-dot-decimal">4.60</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">% and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_093132a7-bc98-4a5e-b601-caeacef9bb69" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" unitRef="U_pure" scale="-2" decimals="INF" format="ixt:num-dot-decimal">4.57</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%, respectively.</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_f5c70427-ef11-4ca7-ae8b-5d98de6b0f5b" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="trex:SupplementalFinancialInformationOfOperatingLeasesTableTextBlock" escape="true"><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table includes supplemental cash flow information for the three months ended March 31, 2025 and March 31, 2024, and supplemental balance sheet information at March 31, 2025 and December 31, 2024 related to operating leases (in thousands):</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"/>
          <td style="width:1.62%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:12.883000000000001%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:1.62%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:12.883000000000001%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31,</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Supplemental cash flow information</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cash paid for amounts included in the measurement of<br/>&#160;&#160;&#160;operating lease liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_aaa2c860-0eb3-4ca3-a38d-98a2265a7d23" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:OperatingLeasePayments" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,661</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d0116d0f-cf94-4960-b667-bd1909878748" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:OperatingLeasePayments" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,007</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating ROU assets obtained in exchange for lease<br/>&#160;&#160;&#160;liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b609a4af-501e-4df6-8eb4-1728961c55e1" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">692</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_737ce8b9-858f-498e-a15f-4bbb5f5e9660" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">578</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"/>
          <td style="width:1.62%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:12.883000000000001%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:1.62%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:12.883000000000001%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Supplemental balance sheet information</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,<br/>2025</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31,<br/>2024</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating lease ROU assets</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8d056ad4-b4e9-47ed-ac01-080d35c1d195" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:OperatingLeaseRightOfUseAsset" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">49,976</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_87683f2b-908b-49ad-b94b-6d4ec0b472f0" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:OperatingLeaseRightOfUseAsset" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">52,195</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating lease liabilities:</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accrued expenses and other current liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_dc43d8e0-7bec-4c4c-8074-3e9d138f3ab2" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="trex:LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">11,093</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ed62a4f7-a42c-44e4-987c-93a421187ab1" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="trex:LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">10,800</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating lease liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_65ff06c0-fd80-434b-94ef-ae06ffdaca1e" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:OperatingLeaseLiabilityNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">39,788</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4df4c5dc-41a7-46f8-812e-89de021d8050" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:OperatingLeaseLiabilityNoncurrent" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">41,979</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total operating lease liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_558178cb-6cbc-467a-b5ab-6731c3b52f18" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:OperatingLeaseLiability" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">50,881</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ae3be13d-84c3-4795-8ac4-37c1e50b16c8" contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d" name="us-gaap:OperatingLeaseLiability" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">52,779</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></ix:nonNumeric></div></ix:nonNumeric></div></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">9</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="font-size:10pt;font-family:Times New Roman;"><ix:continuation id="F_013c0196-f04c-4ed7-8817-3636579b6276_1"><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_11649b53-d99a-45f9-a0d3-2b4a9bd5c243" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" escape="true"><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table summarizes maturities of operating lease liabilities at March 31, 2025 (in thousands):</span></p><p style="margin-left:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:60.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:80.236%;box-sizing:content-box;"/>
          <td style="width:1.94%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:15.823%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Maturities of operating lease liabilities</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2025</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_60aac613-dcb2-4a65-bda4-bf1c84370c3a" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">8,518</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2026</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7e35ba00-32c8-4f88-a29d-7b141e87336a" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">11,237</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2027</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6ba2da73-76cb-4251-ac9d-39c655f15445" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">10,641</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2028</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0c5f3256-9c52-471f-9524-541c7ba540f9" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">9,650</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2029</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_af39b271-dd6f-409b-bcac-fa232359fb41" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">4,385</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Thereafter</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_cd5c2b7b-f777-465e-bb95-b162312c74d5" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">15,555</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total lease payments</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d2d114a9-87d4-4552-a2ab-667f1a83de2e" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">59,986</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Less imputed interest</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c3c8bca6-3900-469a-93ae-911084d413c6" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">9,105</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total operating lease liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_247f1191-d1c2-443a-8461-441e42550068" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:OperatingLeaseLiability" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">50,881</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table></ix:nonNumeric></div></ix:continuation></div><p style="margin-left:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_896697bb-8be8-4339-9fe8-c431dae29faf" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:FinancialInstrumentsDisclosureTextBlock" escape="true"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">11.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">FINANCIAL INSTRUMENTS</span></div></div><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company considers the recorded value of its financial assets and liabilities, consisting primarily of cash and cash equivalents, accounts receivable, accounts payable, accrued expenses, other current liabilities, and debt to approximate the fair value of the respective assets and liabilities on the Condensed Consolidated Balance Sheets at March 31, 2025 and December 31, 2024.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></ix:nonNumeric></div><div><ix:nonNumeric id="F_ae1e4a98-7c7a-48c9-87b3-9d3d362f66a1" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:StockholdersEquityNoteDisclosureTextBlock" escape="true"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">12.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">STOCKHOLDERS&#8217; EQUITY </span></div></div><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Earnings Per Share</span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_0b09dfae-339a-4408-b5dd-25f39a5f019c" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" escape="true"><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table sets forth the computation of basic and diluted earnings per share (in thousands, except share and per share data):</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:75.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:49.92%;box-sizing:content-box;"/>
          <td style="width:2.1%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:20.939999999999998%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:2.1%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:20.939999999999998%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31,</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Numerator:</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net income available to common shareholders</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_dbc60e4f-f1d9-470e-a89c-a3898ab622da" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">60,434</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a2a8ee4b-28b6-477a-82cc-3db58a0f7dd3" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:NetIncomeLoss" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">89,070</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Denominator:</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Basic weighted average shares outstanding</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4b868db0-05f3-4932-b4ad-7f1abf11fa54" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">107,180,665</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ae5876a6-4d12-4bac-ac4c-0feeda18085a" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">108,640,168</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0.01in;text-indent:10pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Effect of dilutive securities:</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Stock appreciation rights and options</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7871272e-0066-4469-9b9a-e0ecf57dde0d" contextRef="C_d01351bb-f834-4793-bab7-1481202ca75e" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">34,543</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f9d62eb3-30d7-470f-a97d-2aebc282ce6b" contextRef="C_4b712b3f-0832-41c7-b1a1-4b22f5f05319" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">71,202</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Restricted stock</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4a80084c-d523-4c50-9359-9d8d72fbaf36" contextRef="C_fc885d73-bdbe-4b1c-a129-ec6764fcad9d" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">68,876</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f2e9293a-03cf-4848-b255-c14ee72c1ffa" contextRef="C_a59a28f8-7444-4c8e-b5b3-6ec3f5aa21fa" name="us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">79,255</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Diluted weighted average shares outstanding</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_62fb4bde-d0d5-42f8-a380-5d5b2ad64b6d" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">107,284,084</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_68ff8378-cb09-4285-8838-c60f26779952" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">108,790,625</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Basic earnings per share</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_955d7504-65d9-4eb4-8330-24ba7bf644f5" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.56</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7187d1f6-87c0-450a-b1d1-b6c84c498470" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:EarningsPerShareBasic" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.82</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Diluted earnings per share</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_25e3d193-104a-405e-aa16-5ce04f22199a" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.56</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6a9091e5-2c1b-4307-8fee-76d20770f0db" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:EarningsPerShareDiluted" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">0.82</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table></ix:nonNumeric></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Diluted earnings per share is computed using the weighted average number of shares determined for the basic earnings per share computation plus the dilutive effect of common stock equivalents using the treasury stock method. </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_0199622a-1cd7-46c9-9743-166b23f6d944" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" escape="true" continuedAt="F_0199622a-1cd7-46c9-9743-166b23f6d944_1"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The computation of diluted earnings per share excludes the following potentially dilutive securities because the effect would be anti-dilutive:  </span></ix:nonNumeric></span><span style=""></span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:continuation id="F_0199622a-1cd7-46c9-9743-166b23f6d944_1"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:59.768%;box-sizing:content-box;"/>
          <td style="width:1.22%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:16.897%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:1.22%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:16.897%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31,</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Stock appreciation rights</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c63fff87-b71d-41d7-bba6-e8cf9ff562cf" contextRef="C_9915ab83-de30-458e-824c-8c26ea72826b" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">129,069</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_13692d06-02c4-44d0-bc9f-6662acf8f2f9" contextRef="C_aecbc23d-299b-47de-8108-584ea6fc66e4" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">55,132</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Restricted stock</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_364cad0c-f741-4151-b8a0-dc4998131706" contextRef="C_b2989125-46c1-4c05-bbdd-d8bd2b6c3c1e" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">92,795</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4b3276ea-656f-4275-9d6d-a9b27c9933e5" contextRef="C_1ed0bdaf-302b-412b-9fde-6c43971a996a" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">48,597</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table></ix:continuation></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Stock Repurchase Program</span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">On May 4, 2023, the Trex Board of Directors adopted a new stock repurchase program (2023 Stock Repurchase Program) of up to </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ada93810-e0b4-4923-a623-79a3db2e2cc2" contextRef="C_fdba3cdf-18f8-4b3e-a8cc-7b89cf63fec1" name="us-gaap:TreasuryStockSharesAcquired" unitRef="U_shares" scale="6" decimals="-5" format="ixt:num-dot-decimal">10.8</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million shares of its outstanding common stock. The 2023 Stock Repurchase Program has no set expiration date. During the three months ended March 31, 2025, the Company did </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a3f9f6a1-7090-4c17-b6ab-d7b02a4d1851" contextRef="C_7c978468-c4fe-4b54-8c63-01aa42b959c2" name="us-gaap:StockRepurchasedDuringPeriodShares" unitRef="U_shares" decimals="INF" format="ixt-sec:numwordsen">no</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">t repurchase any shares of its outstanding common stock under the 2023 Stock Repurchase Program.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></ix:nonNumeric></div></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">10</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_f1c742a7-42b5-4db2-b5fb-16a552a616af" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:RevenueFromContractWithCustomerTextBlock" escape="true"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">13.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">REVENUE FROM CONTRACTS WITH CUSTOMERS</span></div></div><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company principally generates revenue from the manufacture and sale of its high-performance, low-maintenance, eco-friendly wood-alternative composite decking and railing products and accessories. Substantially all of its revenues are from contracts with customers, which are purchase orders of short-term duration of less than one year. Its customers, in turn, sell primarily to the residential market, which includes replacement, remodeling and new construction related to outdoor living products. The Company satisfies its performance obligations at a point in time. The shipment of each product is a separate performance obligation as the customer is able to derive benefit from each product shipped and no performance obligation remains after shipment. Upon shipment of the product, the customer obtains control over the distinct product and Trex satisfies its performance obligation. Any performance obligation that remains unsatisfied at the end of a reporting period is part of a contract that has an original expected duration of one year or less. Any variable consideration related to the unsatisfied performance obligation is allocated wholly to the unsatisfied performance obligation, is recognized when the product ships and the performance obligation is satisfied and is included in &#8220;Accrued expenses and other liabilities, Sales and marketing&#8221; in Note 8 to the Condensed Consolidated Financial Statements. For the three months ended March 31, 2025 and March 31, 2024, the Company&#8217;s net sales were $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a080e3ee-64ab-4427-9916-68fa542355c8" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">339,993</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_de9dae63-8fd5-451e-88e0-547601442ab8" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">373,635</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively. During these periods, revenues were recognized at a point in time upon transfer of its outdoor living products under variable consideration contracts into the building products market.</span></p></ix:nonNumeric></div><div><ix:nonNumeric id="F_9119e619-88ce-43b6-b04a-bf84105bd5b4" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" escape="true" continuedAt="F_9119e619-88ce-43b6-b04a-bf84105bd5b4_1"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">14.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">STOCK-BASED COMPENSATION </span></div></div><p style="text-indent:22.5pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">At the annual meeting of stockholders of the Company held on May 4, 2023, the Company&#8217;s stockholders approved the Trex Company, Inc. 2023 Stock Incentive Plan (Plan). The Company&#8217;s board of directors unanimously approved the Plan on April 10, 2023, subject to stockholder approval. The Plan amends and restates in its entirety the Trex Company, Inc. 2014 Stock Incentive Plan (2014 Plan), which was last approved by the Company&#8217;s stockholders at the annual meeting held on April 30, 2014. The Plan, which will be administered by the compensation committee of the board of directors, provides for the grant of stock options, restricted stock, restricted stock units, stock appreciation rights and unrestricted stock, which are referred to collectively as &#8220;awards.&#8221; Awards may be granted under the Plan to officers, directors (including non-employee directors) and other employees of the Company or any subsidiary thereof, to any adviser, consultant, or other provider of services to the Company (and any employee thereof), and to any other individuals who are approved by the board of directors as eligible to participate in the Plan. Only employees of the Company or any subsidiary thereof are eligible to receive incentive stock options. Subject to certain adjustments as provided in the Plan, the total number of shares of common stock available for future grants under the Plan is </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_41554acd-bcd6-4629-9e1a-39f3d181ba61" contextRef="C_d652431e-2d22-4305-bdfc-61faa29fe0e6" name="us-gaap:CommonStockCapitalSharesReservedForFutureIssuance" unitRef="U_shares" decimals="INF" format="ixt:num-dot-decimal">3,669,418</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> shares.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_c7d52117-2aaa-4b3d-ba12-9d5a79e03265" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock" escape="true"><p style="text-indent:22.5pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table summarizes the Company&#8217;s stock-based compensation grants for the three months ended March 31, 2025:</span></p><p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.98%;box-sizing:content-box;"/>
          <td style="width:1.16%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:13.36%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:1.62%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:12.88%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Stock Awards<br/>Granted</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Weighted-<br/>Average<br/>Grant Price<br/>Per Share</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Time-based restricted stock units</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a1d644c9-b5db-4d7e-99d5-3f1b67377e4d" contextRef="C_ddc4dbae-5041-4b42-8dc8-63e5332d6df4" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">65,750</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6beb791e-f80d-4cf8-b86f-693b00f3b130" contextRef="C_ddc4dbae-5041-4b42-8dc8-63e5332d6df4" name="trex:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">67.29</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Performance-based restricted stock units (a)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_50333f0d-fb90-41b8-a256-37344e17d625" contextRef="C_a1c92c4d-427a-4d44-be00-f1bce5512360" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">97,063</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1d09f576-98d8-4aac-9d78-d22b521dcbb6" contextRef="C_a1c92c4d-427a-4d44-be00-f1bce5512360" name="trex:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">65.34</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Stock appreciation rights</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_cb9e8acf-4683-4fa2-9f4a-7956ed08b622" contextRef="C_f743b696-54dc-4203-bd4a-0991a2693a79" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">43,597</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_225bccb1-d8ce-46f1-831a-1fed63f785f2" contextRef="C_f743b696-54dc-4203-bd4a-0991a2693a79" name="trex:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">67.33</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div class="item-list-element-wrapper" style="margin-left:0.25in;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.25in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:3.447919145106397%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(a)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Includes </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_f3d1ad4d-9da3-4615-a5da-63399f35b63f" contextRef="C_f92fe0b1-93df-4ed6-9f4f-7be715202df2" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">75,210</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> of target performance-based restricted stock unit awards granted during the three months ended March 31, 2025, and adjustments of </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_52664a29-a8f3-4314-a7e7-27fd2bab0424" contextRef="C_31b4123d-22cf-4c7f-a15b-7682f885be6d" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">1,093</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_57c78024-9d8c-4343-a500-ade7d5811034" contextRef="C_80baee2f-7e29-45b0-b70b-ac4ed431ae07" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" unitRef="U_shares" decimals="0" format="ixt:num-dot-decimal">20,760</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> to grants due to the actual performance level achieved for restricted stock and restricted stock units award</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">ed in 2024 and 2023, r</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">espectively.</span></div></div></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_3ac038a9-a3fb-4d4c-9127-6d040620ae70" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" escape="true"><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The fair value of each SAR is estimated on the date of grant using a </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_b690300c-0564-496f-a12d-3468f401e2cd;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Black-Scholes option-pricing formula.</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> For SARs issued in the three months ended March 31, 2025 and March 31, 2024, the data and assumptions shown in the following table were used:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="margin-left:18pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"/>
          <td style="width:1.62%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:12.882%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:1.62%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:12.882%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31, 2025</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31, 2024</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Weighted-average fair value of grants</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_86ed317e-9b08-46dc-8e6d-87e16e26c5b2" contextRef="C_f743b696-54dc-4203-bd4a-0991a2693a79" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">33.49</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1fdfe0f5-e8ad-4c2c-89f1-8b9c8996ec67" contextRef="C_7d9f7f54-d825-4f56-ae1e-d69927ec5cc9" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" unitRef="U_UnitedStatesOfAmericaDollarsShare" scale="0" decimals="2" format="ixt:num-dot-decimal">44.83</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Dividend yield</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_71d1377d-88a1-44f2-aa7c-83b6f4908c81" contextRef="C_f743b696-54dc-4203-bd4a-0991a2693a79" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">0</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_0ae979e7-dc3d-497e-9c76-5d5eecd05c33" contextRef="C_7d9f7f54-d825-4f56-ae1e-d69927ec5cc9" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" unitRef="U_pure" scale="-2" decimals="2" format="ixt:num-dot-decimal">0</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Average risk-free interest rate</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_ea9d9696-4d18-49f6-9267-b039b689171a" contextRef="C_f743b696-54dc-4203-bd4a-0991a2693a79" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">4.3</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a8e7b53a-8cdd-405c-9432-21342744ed7b" contextRef="C_7d9f7f54-d825-4f56-ae1e-d69927ec5cc9" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">4.3</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Expected term (years)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span><ix:nonNumeric id="F_a1f28d3a-79c3-44fd-891d-72775a65cd68" contextRef="C_f743b696-54dc-4203-bd4a-0991a2693a79" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5</span></ix:nonNumeric></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span><ix:nonNumeric id="F_8df57609-ccb7-42df-9645-e7769ba244ad" contextRef="C_7d9f7f54-d825-4f56-ae1e-d69927ec5cc9" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5</span></ix:nonNumeric></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Expected volatility</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c87287b2-6c0c-459f-b20e-ac72341c7f7c" contextRef="C_f743b696-54dc-4203-bd4a-0991a2693a79" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">51.7</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_97988386-b08c-4e11-90c8-7f1a99566ef2" contextRef="C_7d9f7f54-d825-4f56-ae1e-d69927ec5cc9" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">51.2</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         </tr>
        </table></ix:nonNumeric></div><p style="margin-left:18pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Company recognizes stock-based compensation expense ratably over the period from the grant date to the earlier of: (1) the vesting date of the award, or (2) the date the grantee is eligible to retire without forfeiting the award. For performance-based restricted stock and performance-based restricted stock units, expense is recognized ratably over the performance and vesting period of each tranche based on management&#8217;s judgment of the ultimate award that is likely to be paid out based on the achievement of the</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></ix:nonNumeric></div></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">11</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div><ix:continuation id="F_9119e619-88ce-43b6-b04a-bf84105bd5b4_1"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">predetermined </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">performance measures. For the employee stock purchase plan, compensation expense is recognized related to the discount on purchases. Stock-based compensation expense is included in &#8220;Selling, general and administrative expenses&#8221; in the Condensed Consolidated Statements of Comprehensive Income.</span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_191c5c39-85b2-4586-9c86-1f1717332e22" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" escape="true" continuedAt="F_191c5c39-85b2-4586-9c86-1f1717332e22_1"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> The following table summarizes the Company&#8217;s stock-based compensation expense (in thousands):  </span></ix:nonNumeric></span><span style=""></span></p><div style="font-size:10pt;font-family:Times New Roman;"><ix:continuation id="F_191c5c39-85b2-4586-9c86-1f1717332e22_1"><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"/>
          <td style="width:1.62%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:12.883000000000001%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:1.62%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:12.883000000000001%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31,</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Stock appreciation rights</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4b38a75a-539c-4af2-b277-0a94403bbdbd" contextRef="C_f743b696-54dc-4203-bd4a-0991a2693a79" name="us-gaap:AllocatedShareBasedCompensationExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">295</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_a047616a-6f64-4e71-890a-7a699637d3ba" contextRef="C_7d9f7f54-d825-4f56-ae1e-d69927ec5cc9" name="us-gaap:AllocatedShareBasedCompensationExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">271</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Time-based restricted stock and restricted stock units</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_25e90b18-a12d-4eae-a09c-ed087190445e" contextRef="C_34213902-e621-4f3d-8d2c-cfc92fdbd907" name="us-gaap:AllocatedShareBasedCompensationExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">826</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_94f12ca1-c806-46be-8666-b69f53ed735a" contextRef="C_f6b42be6-496b-4f49-b6d8-be98c482f21a" name="us-gaap:AllocatedShareBasedCompensationExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,074</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Performance-based restricted stock and restricted stock units</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7427a851-c8c0-4d2e-88e0-4931bd60fb98" contextRef="C_20e88d50-db92-4dbb-b242-24b346809eca" name="us-gaap:AllocatedShareBasedCompensationExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,140</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_843403c1-06ba-42cb-bbf6-de298aad4875" contextRef="C_c84c44b6-a340-4f24-8662-14255ab724c7" name="us-gaap:AllocatedShareBasedCompensationExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,642</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Employee stock purchase plan</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_062e5261-2a94-4fff-812e-d4817ee5c4a7" contextRef="C_b108950e-4905-4cc7-8ea2-f7bbb9eea98d" name="us-gaap:AllocatedShareBasedCompensationExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">52</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_86e96799-cdd6-4ffb-bd95-4790df266f8e" contextRef="C_3acb3ff4-cd1b-4533-b0bb-fc9957ba3cbd" name="us-gaap:AllocatedShareBasedCompensationExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">166</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total stock-based compensation</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_11b5fbb7-168a-45d3-82d4-1027adbdfce2" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:AllocatedShareBasedCompensationExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,313</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b413a455-37fb-4404-8df4-0e316ba44f02" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:AllocatedShareBasedCompensationExpense" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">3,153</ix:nonFraction></span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table></ix:continuation></div><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Total unrecognized compensation cost related to unvested awards as of March 31, 2025 was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2ed6f343-4dc8-4b90-bd3b-84abc7d8b5b3" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">17.3</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million. The cost of these unvested awards is being recognized over the requisite vesting period of each award.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></ix:continuation></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_b2f5c055-fb18-49ed-8cb6-92b2df55ecc9" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:IncomeTaxDisclosureTextBlock" escape="true"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">15.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">INCOME TAXES</span></div></div><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company&#8217;s effective tax rate for the three months ended March 31, 2025 and March 31, 2024, was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_03f13dc0-431b-46a0-8ddb-00bfce81875b" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">25.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">% and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b1739dae-a743-4948-a97b-6707dfcc1199" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" unitRef="U_pure" scale="-2" decimals="3" format="ixt:num-dot-decimal">25.2</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%, which resulted in income tax expense of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c3fe002b-26ad-4850-89b4-3aaef8c8dcc7" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:IncomeTaxExpenseBenefit" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">21.2</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4b427993-af8c-4e78-97fe-df8420dbe0f7" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="us-gaap:IncomeTaxExpenseBenefit" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">29.9</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">During the three months ended March 31, 2025 and March 31, 2024, the Company realized $(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_368d7c4c-7174-40ac-875c-bf43d29bb431" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="trex:ExcessTaxBenefitsFromStockBasedAwards" unitRef="U_USD" scale="6" decimals="-5" sign="-" format="ixt:num-dot-decimal">0.1</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">) million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_d70bf3ed-ce3e-4e7b-81ee-681e1a326e0a" contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c" name="trex:ExcessTaxBenefitsFromStockBasedAwards" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">0.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, respectively, of excess tax expense and excess tax benefit from stock-based awards and recorded a corresponding expense and benefit to income tax expense.</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company analyzes its deferred tax assets each reporting period, considering all available positive and negative evidence in determining the expected realization of those deferred tax assets. As of March 31, 2025, the Company maintains a valuation allowance of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e0fa45d9-2645-43af-a794-55d208a18730" contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9" name="us-gaap:DeferredTaxAssetsValuationAllowance" unitRef="U_USD" scale="6" decimals="-5" format="ixt:num-dot-decimal">2.6</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million against deferred tax assets primarily related to state tax credits it estimates will expire before they are realized.</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company operates in multiple tax jurisdictions, and, in the normal course of business, its tax returns are subject to examination by various taxing authorities. Such examinations may result in future assessments by these taxing authorities, and the Company accrues a liability when it believes that it is more likely than not that benefits of tax positions will not be realized. The Company believes that adequate provisions have been made for all tax returns subject to examination. As of March 31, 2025, for certain tax jurisdictions tax years </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_71bdfe16-c7bd-4372-91d0-8fa8ccf132d3;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2020 through 2024</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> remain subject to examination. The Company believes that adequate provisions have been made for all tax returns subject to examination. Sales made to foreign distributors are not taxable in any foreign jurisdiction as the Company does not have a taxable presence in any foreign jurisdiction.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></ix:nonNumeric></div><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_dc9b2356-a2b9-424f-a0a9-1959f9c54bb1" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:SegmentReportingDisclosureTextBlock" escape="true"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">16.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">SEGMENT INFORMATION</span></div></div><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company operates in </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_6eb11c9a-7ead-49cd-b000-9454156af5fc" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:NumberOfReportableSegments" unitRef="U_Segment" decimals="INF" format="ixt-sec:numwordsen">one</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> reportable segment, Trex Residential, with resource allocation and assessment of financial performance based on a consolidated basis.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Trex Residential manufactures composite decking and railing and related outdoor living products marketed under the brand name Trex</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">. The products are sold to its distributors and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_78758b14-7f14-4647-a01d-36eb82223e00" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="trex:NumberOfSalesRetailers" unitRef="U_Retailer" decimals="INF" format="ixt-sec:numwordsen">two</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> national retailers who, in turn, sell primarily to the residential market, which includes replacement, remodeling and new construction.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company&#8217;s reportable segments are determined in accordance with its internal management structure, which is based on operations. The Company has identified its President and Chief Executive Officer as the </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_abeb9af2-c314-4509-a5bf-4f65d81e3fad;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Chief Operating Decision Maker</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> (CODM). The Company&#8217;s CODM has final authority over resource allocation decisions and performance assessments and makes key operating decisions. </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_5f2239e7-7bd8-4632-a984-de96fedb635c" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:SegmentReportingCodmProfitLossMeasureHowUsedDescription"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The primary objective of the CODM is to optimize positive Company-wide performance and financial results. The CODM evaluates segment performance primarily based on net income and net sales. The CODM uses net income to assess performance and allocate resources as this measure provides insight into all aspects of the segment&#8217;s operations and overall success of the segment for a given period. The CODM also uses net sales to assess performance and allocate resources as this measure represents the amount of business the segment engaged in during a given period of time, is an indicator of market growth and acceptance of segment products, and represents the segment&#8217;s customers&#8217; spending habits along with the amount of product the segment sells relative to its competitors.</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> In addition, the CODM reviews significant segment expenses with a  primary focus on cost of sales and total selling, general, and administrative expenses. These measures are provided in the accompanying Condensed Consolidated Statements of Comprehensive Income. Segment assets are reported on the Condensed Consolidated Balance Sheets.</span></p></ix:nonNumeric></div></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">12</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_87e8d746-e3ac-44cb-969c-b34b7c07793c" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="trex:SeasonalityDisclosureTextBlock" escape="true"><p style="text-indent:-24.5pt;padding-left:24.5pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">17.	SEASONALITY</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The operating results for Trex have historically varied from quarter to quarter. Seasonal, erratic or prolonged adverse weather conditions may reduce the level of home improvement and construction activity and can shift sales of its products to a later period or decrease overall sales in affected locations. As part of its normal business practice and consistent with industry practice, Trex has historically offered incentive programs to its distributors and dealers to build inventory levels before the start of the prime deck-building season in order to ensure adequate availability of its product to meet anticipated seasonal consumer demand. The seasonal effects are often offset by the positive effect of the incentive programs.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></ix:nonNumeric></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;">&#160;</p><div><ix:nonNumeric id="F_76e83db3-e9f6-4b0b-83e3-0f5861b34d24" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" escape="true" continuedAt="F_76e83db3-e9f6-4b0b-83e3-0f5861b34d24_1"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">18.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">COMMITMENTS AND CONTINGENCIES</span></div></div><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="ole_link15"><span id="ole_link16"></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Product Warranty</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company warrants that for the applicable warranty period its products, when properly installed, used and maintained, will be free from material defects in workmanship and materials and its decking, cladding, fascia and railing products will not split, splinter, rot or suffer structural damage from termites or fungal decay.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Products sold on or after January 1, 2023: The warranty period for residential use is </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_346401d1-11bb-49d4-9cc0-f59fc244aec7" contextRef="C_160fc5cf-e7da-4528-8901-3fb706c9d7be" name="trex:WarrantyPeriod" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">50</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years for Transcend</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> decking, </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_5f6e83bb-7fc8-4ad7-a527-1c0fbc9fd4b4" contextRef="C_21f532e7-6179-4e31-8bff-9c76efc3cee5" name="trex:WarrantyPeriod" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">35</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years for Select</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> decking and Universal Fascia, and </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_5f451c26-b781-40f0-812a-75ae7cfcef54" contextRef="C_000977a8-6a3d-4ec8-8991-fa651366adfd" name="trex:WarrantyPeriod" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">25</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years for Enhance</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> decking and Transcend, Select, Enhance and Signature</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> railing. The warranty period for commercial use is </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_1453b2d1-1295-40f0-82f8-35c09fb5bc19" contextRef="C_30aa8c2f-c604-4c0f-ae59-c6e9f26b2113" name="trex:WarrantyPeriod" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">10</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years, excluding Signature railing and Transcend cladding, which each have a warranty period of</span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_0303df73-6981-4e8f-8894-eea666969eb2" contextRef="C_74dbf428-7f53-41d2-945e-748db7ec532d" name="trex:WarrantyPeriod" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> 25</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years. The Company further warrants that Trex Transcend, Trex Enhance and Trex Select decking and cladding and Universal Fascia products will not fade in color from light and weathering exposure more than a certain amount and will be resistant to permanent staining from food and beverage substances or mold and mildew, provided the stain is cleaned within seven days of appearance, for the warranty period referred to above. If there is a breach of such warranties, the Company has an obligation either to replace the defective product or refund the purchase price.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Products sold prior to January 1, 2023: The warranty period is </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_91a289a0-61fb-40f1-bb5d-30fce7d81338" contextRef="C_06216a84-367d-453b-97af-0e5db4ae9937" name="trex:WarrantyPeriod" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">25</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years for residential use and </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_085a0efb-e11c-47a9-81fa-fe7f94e6f0db" contextRef="C_f1fd57c9-5905-4cc5-bd50-cffe8a2ad329" name="trex:WarrantyPeriod" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">10</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years for commercial use. With respect to Trex Signature railing, the warranty period is </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_0708a6ed-2d95-41e8-b028-c1a8acbccc26" contextRef="C_479b12da-f306-4c52-8211-3463e0b72884" name="trex:WarrantyPeriod" format="ixt-sec:duryear"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">25</span></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years for both residential and commercial use. The Company further warrants that Trex Transcend, Trex Enhance, Trex Select and Universal Fascia products will not fade in color more than a certain amount and will be resistant to permanent staining from food substances or mold, provided the stain is cleaned within seven days of appearance, for the warranty period referred to above. If there is a breach of such warranties, the Company has an obligation either to replace the defective product or refund the purchase price.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company maintains a warranty reserve for the settlement of its product warranty claims. The Company accrues for the estimated cost of product warranty claims at the time revenue is recognized based on such factors as historical claims experience and estimated future claims. Management reviews and adjusts these estimates, if necessary, based on the differences between actual experience and historical estimates. Additionally, the Company accrues for warranty costs associated with occasional or unanticipated product quality issues if a loss is probable and can be reasonably estimated, as necessary.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company continues to receive and settle claims for decking products manufactured at its Nevada facility prior to 2007 that exhibit surface flaking and maintains a warranty reserve to provide for the settlement of these claims. Estimating the warranty reserve for surface flaking claims requires management to estimate the number of claims to be settled with payment and the average cost to settle each claim. The Company monitors surface flaking claims activity each quarter for indications that its estimates require revision.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company believes its product warranty and surface flaking reserves at March 31, 2025 are sufficient to cover future warranty obligations. </span><span><ix:nonNumeric id="F_4a7e491d-a267-4ba0-8703-c087c9215c7a" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock" escape="true" continuedAt="F_4a7e491d-a267-4ba0-8703-c087c9215c7a_1"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following is a reconciliation of the Company&#8217;s product warranty and surface flaking reserves (in thousands):  </span></ix:nonNumeric></span><span style=""></span></p><div><ix:continuation id="F_4a7e491d-a267-4ba0-8703-c087c9215c7a_1" continuedAt="F_4a7e491d-a267-4ba0-8703-c087c9215c7a_2"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:80.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:57.477%;box-sizing:content-box;"/>
          <td style="width:1.399%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:10.776%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:1.399%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:10.776%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:1.399%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:10.776%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31, 2025</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Product Warranty</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Surface Flaking</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Beginning balance, January 1</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2922dc23-8d5d-4a0e-a4fe-4a8ea7f7d4dd" contextRef="C_727b1285-ee45-495e-829c-bdb87118d3d5" name="us-gaap:StandardProductWarrantyAccrual" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">15,596</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5b871277-fbea-4568-9e83-bc0a99ab96a8" contextRef="C_467aa8b1-b247-4454-a59e-c4039b58e300" name="us-gaap:StandardProductWarrantyAccrual" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">7,239</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_06b9ed58-6958-4001-bdba-53817dc4c51a" contextRef="C_3bdbff76-38f1-4b53-ac1e-296051ee7de7" name="us-gaap:StandardProductWarrantyAccrual" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">22,835</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Provisions and changes in estimates</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_c679e0ac-9f32-498f-bf74-383c9dc83876" contextRef="C_9e6647df-2091-42e7-a3a1-417f8a828b33" name="us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,550</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_e0a9036e-71c3-4a95-a307-ba56147b1b5e" contextRef="C_236f35f2-5fcc-46c3-beb9-5a5363691b17" name="us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_b523cf5a-0cda-4989-b7ab-6d03a6d3766b" contextRef="C_5c21fb3f-d14b-4d2e-abf1-74d1a4c37a9a" name="us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,550</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Settlements made during the period</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_203aebc2-d3e3-4127-b496-d051dea77d5d" contextRef="C_9e6647df-2091-42e7-a3a1-417f8a828b33" name="us-gaap:StandardProductWarrantyAccrualPayments" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,238</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8c205fdb-d73e-42ee-976e-ed8ed061ea06" contextRef="C_236f35f2-5fcc-46c3-beb9-5a5363691b17" name="us-gaap:StandardProductWarrantyAccrualPayments" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">356</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_35204037-7262-489e-8029-ea43010ae7d5" contextRef="C_5c21fb3f-d14b-4d2e-abf1-74d1a4c37a9a" name="us-gaap:StandardProductWarrantyAccrualPayments" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,594</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Ending balance, March 31</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_5441b927-f830-4f81-8ffa-1dc5ab3c8f37" contextRef="C_0a11d0ba-7d64-4bae-a644-803cfb6397ea" name="us-gaap:StandardProductWarrantyAccrual" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">16,908</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_50622217-84e0-4aa6-9af3-9910f0380c13" contextRef="C_75b5cb2b-a5f5-4fdd-805a-247c93d565e7" name="us-gaap:StandardProductWarrantyAccrual" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">6,883</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_2002795a-a0ca-4d01-b3d9-1645312bdae6" contextRef="C_5b5827e5-9779-4bf2-80c4-7707e58e780b" name="us-gaap:StandardProductWarrantyAccrual" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">23,791</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></ix:continuation></div></ix:nonNumeric></div></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">13</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="font-size:10pt;font-family:Times New Roman;"><ix:continuation id="F_76e83db3-e9f6-4b0b-83e3-0f5861b34d24_1"><div style="font-size:10pt;font-family:Times New Roman;"><ix:continuation id="F_4a7e491d-a267-4ba0-8703-c087c9215c7a_2"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:80.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:57.477%;box-sizing:content-box;"/>
          <td style="width:1.399%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:10.776%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:1.399%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:10.776%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:1.399%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
          <td style="width:10.776%;box-sizing:content-box;"/>
          <td style="width:1%;box-sizing:content-box;"/>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31, 2024</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Product Warranty</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Surface Flaking</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Beginning balance, January 1</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_73979d37-fcae-4670-8078-067869e98cdc" contextRef="C_4380ab5c-971c-4ab9-9e80-c371ba493920" name="us-gaap:StandardProductWarrantyAccrual" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">12,066</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_17e668b3-7931-41f1-8b80-66700d3d7710" contextRef="C_8e7a9ef9-30fb-4364-9d1f-9b06b42b6548" name="us-gaap:StandardProductWarrantyAccrual" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">10,112</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4fab4b7e-dbb5-4381-80b5-64465b2f6825" contextRef="C_b0f907b9-5f76-4a7b-938c-3aacc09ca10d" name="us-gaap:StandardProductWarrantyAccrual" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">22,178</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Provisions and changes in estimates</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_1c3c73cb-d433-4b10-8de3-073c5e6e25c1" contextRef="C_32cb1923-a423-4669-a0b7-d92694543929" name="us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,068</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_564144fc-2821-4933-a7f0-9de1d2ed70e1" contextRef="C_7e158bcd-195f-4d12-b933-d56b8ae0fe81" name="us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease" unitRef="U_USD" scale="3" decimals="-3" format="ixt:fixed-zero">&#8212;</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_fd73997f-8fae-41a9-b095-7bba3d58da6b" contextRef="C_46f48da5-041d-4ddf-8368-9aa80a1bec5a" name="us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">2,068</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Settlements made during the period</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_623aa8e0-1c29-4712-8a5b-7eee6d46ebad" contextRef="C_32cb1923-a423-4669-a0b7-d92694543929" name="us-gaap:StandardProductWarrantyAccrualPayments" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">924</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_72b6c732-66d1-48d8-aee4-c5e3eb7b0024" contextRef="C_7e158bcd-195f-4d12-b933-d56b8ae0fe81" name="us-gaap:StandardProductWarrantyAccrualPayments" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">188</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_92c69b11-22cb-4632-817d-ebca50cd3073" contextRef="C_46f48da5-041d-4ddf-8368-9aa80a1bec5a" name="us-gaap:StandardProductWarrantyAccrualPayments" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">1,112</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Ending balance, March 31</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_4f83dd0c-ba51-494e-bd01-2ab543768894" contextRef="C_235e72a1-2df5-4423-a57c-d4fc2831663b" name="us-gaap:StandardProductWarrantyAccrual" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">13,210</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_7a00547d-46d8-4f75-9233-088960298730" contextRef="C_713035c9-88eb-4178-861f-7d66792d62fe" name="us-gaap:StandardProductWarrantyAccrual" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">9,924</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_8ef111c5-3099-42c5-bb42-e4c6bc341dde" contextRef="C_1042da33-40cf-4172-9d13-cbe43571d3a9" name="us-gaap:StandardProductWarrantyAccrual" unitRef="U_USD" scale="3" decimals="-3" format="ixt:num-dot-decimal">23,134</ix:nonFraction></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table></ix:continuation></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Legal Matters</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company has lawsuits, as well as other claims, pending against it which are ordinary routine litigation and claims incidental to the business. Management has evaluated the merits of these lawsuits and claims and believes that their ultimate resolution will not have a material effect on the Company&#8217;s consolidated financial condition, results of operations, liquidity or competitive position.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Industrial Revenue Bonds</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In October 2021, the Company announced plans to add a third manufacturing facility located in Little Rock, Arkansas (Little Rock). Construction on the new facility began in the second quarter of 2022. In connection with the construction of the new facility, during 2024 the Company and Little Rock entered into an agreement in which Little Rock agreed to issue up to $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_704084b4-6c7a-45cc-ab79-0d51e79fee6f" contextRef="C_339092ed-217a-4730-8c0d-5d5e4d97ef57" name="us-gaap:DebtInstrumentCarryingAmount" unitRef="U_USD" scale="6" decimals="-6" format="ixt:num-dot-decimal">450</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million of its industrial revenue bonds (IRBs) for the purpose of constructing a manufacturing facility. Under the agreement, the Company transferred ownership of the facility to Little Rock and simultaneously leased the related asset from Little Rock. The Company is also the purchaser of the IRBs and, therefore, is the bondholder as well as the borrower/lessee of the Little Rock facility purchased with the IRB proceeds. As a result of the agreement, the Company was able to reduce the cost of certain state and local tax expenditures for twenty years. The Company has a purchase option included in the lease agreement for below the fair value of the asset, which prevents the transfer of the asset to Little Rock from being recognized as a sale. Furthermore, the Company has not derecognized the transferred asset and continues to recognize it in property, plant and equipment in the Consolidated Balance Sheets. The Company has the right and intends to set-off any obligations to make payments under the finance liability, with proceeds due from the IRBs. The liability and IRB asset are equal and are reported net in the Consolidated Balance Sheets. As of March 31, 2025, the gross asset and liability associated with the IRBs was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"><ix:nonFraction id="F_413a21b3-8ee9-4f38-b59f-2df25c64f3f5" contextRef="C_339092ed-217a-4730-8c0d-5d5e4d97ef57" name="trex:GrossAssetAndLiability" unitRef="U_USD" scale="6" decimals="-6" format="ixt:num-dot-decimal">100</ix:nonFraction></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million.</span></p></ix:continuation></div></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">14</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_2_managements_discussion"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Item 2.   Management&#8217;s Disc</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">ussion and Analysis of Financial Condition and Results of Operations</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">The following management discussion should be read in conjunction with the Trex Company, Inc. (Trex, Company, we or our) Annual Report on Form 10-K for the year ended December 31, 2024 filed with the U.S. Securities and Exchange Commission (SEC) and the condensed consolidated financial statements and notes thereto included in Part I, Item 1. &#8220;Financial Statements&#8221; of this quarterly report.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NOTE ON FORWARD-LOOKING STATEMENTS</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">This management&#8217;s discussion and analysis contains forward-looking statements within the meaning of Section 27A of the Securities Act of 1933 and Section 21E of the Securities Exchange Act of 1934. All statements regarding our expected financial position and operating results, our business strategy, our financing plans, forecasted demographic and economic trends relating to our industry and similar matters are forward-looking statements. These statements can sometimes be identified by our use of forward-looking words such as &#8220;may,&#8221; &#8220;will,&#8221; &#8220;anticipate,&#8221; &#8220;estimate,&#8221; &#8220;expect,&#8221; &#8220;intend&#8221; or similar expressions. We cannot promise you that our expectations in such forward-looking statements will turn out to be correct. Our actual results could be materially different from our expectations because of various factors, including the factors discussed under &#8220;Item 1A. Risk Factors&#8221; in our Annual Report on Form 10-K for the year ended December 31, 2024 filed with the SEC. These statements are also subject to risks and uncertainties that could cause the Company&#8217;s actual operating results to differ materially. Such risks and uncertainties include, but are not limited to: the extent of market acceptance of the Company&#8217;s current and newly developed products; the costs associated with the development and launch of new products and the market acceptance of such new products; the sensitivity of the Company&#8217;s business to general economic conditions; the impact of seasonal and weather-related demand fluctuations on inventory levels in the distribution channel and sales of the Company&#8217;s products; the availability and cost of third-party transportation services for the Company&#8217;s products and raw materials; the Company&#8217;s ability to obtain raw materials, including scrap polyethylene, wood fiber, and other materials used in making our products, at acceptable prices; increasing inflation and tariffs in the macro-economic environment; the Company&#8217;s ability to maintain product quality and product performance at an acceptable cost; the Company&#8217;s ability to increase throughput and capacity to adequately match supply with demand; the level of expenses associated with warranty claims, product replacement and consumer relations expenses related to product quality; the highly competitive markets in which the Company operates; cyber-attacks, security breaches or other security vulnerabilities; the impact of current and upcoming data privacy laws and the EU General Data Protection Regulation and the related actual or potential costs and consequences; material adverse impacts from </span><span style="color:#212529;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">global public health pandemics, geopolitical conflicts; and material adverse impacts related to labor shortages or increases in labor costs</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">    </span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">OVERVIEW</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following MD&amp;A is intended to help the reader understand the operations and current business environment of the Company. The MD&amp;A is provided as a supplement to, and should be read in conjunction with, our Condensed Consolidated Financial Statements and the accompanying notes thereto contained in "</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Item 1. Condensed Consolidated Financial Statements</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">" of this report. MD&amp;A includes the following sections:</span></p><div class="item-list-element-wrapper" style="margin-left:0.25in;display:flex;margin-top:4pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.25in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:3.447919145106397%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Operations and Products</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> &#8212; a general description of our business, a brief overview of our reportable segment&#8217;s products, and a discussion of our operational highlights.</span></div></div><div class="item-list-element-wrapper" style="margin-left:0.25in;display:flex;margin-top:4pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.25in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:3.447919145106397%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Highlights and Financial Performance Quarter-to-Date and Year-to-Date </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#8212;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">a summary of financial performance and highlights for the three months ended March 31, 2025, a general discussion of factors that may affect our operations, and a description of relevant financial statement line items.</span></div></div><div class="item-list-element-wrapper" style="margin-left:0.25in;display:flex;margin-top:4pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.25in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:3.447919145106397%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Results of Operations</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> &#8212; an analysis of our consolidated results of operations for the three months ended March 31, 2025 compared to the three months ended March 31, 2024.</span></div></div><div class="item-list-element-wrapper" style="margin-left:0.25in;display:flex;margin-top:4pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.25in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:3.447919145106397%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Liquidity and Capital Resources</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> &#8212; an analysis of cash flows; contractual obligations, and a discussion of our capital and other cash requirements.</span></div></div><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">OPERATIONS AND PRODUCTS</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Trex </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">is the world&#8217;s largest manufacturer of high-performance composite decking and railing products and a leader in outdoor living products, which are marketed under the brand name Trex</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and manufactured in the United States. With more than 30 years of product experience, we offer a comprehensive set of aesthetically appealing and durable, low-maintenance product offerings in the decking, railing, fencing and outdoor lighting categories. A majority of the products are eco-friendly and leverage recycled and reclaimed materials to the extent possible. Trex decking is made in a proprietary process that combines reclaimed wood fibers and recycled polyethylene film, making Trex one of the largest recyclers of plastic film in North America. In addition to resisting fading and surface staining, Trex products require no sanding and sealing, resist moisture damage, provide a splinter-free surface and do not require chemical treatment against rot or insect infestation. Combined, these aspects yield significant aesthetic advantages and lower maintenance than wood decking and railing and ultimately render Trex products less costly than wood over the life of the deck. Special characteristics (including resistance to splitting, the ability to bend, and ease and consistency of machining and finishing)</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">15</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">facilitate installation, reduce contractor call-backs and afford consumers a wide range of design options. Trex products are sold to distributors and home centers for final resale primarily to the residential market.</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Trex offers the following products:</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:13.42%;box-sizing:content-box;"/>
      <td style="width:86.58%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:10pt;background-color:#cccccc;word-break:break-word;white-space:pre-wrap;">
      <td style="border-top:0.75pt solid #000000;padding-top:0in;border-right:0.75pt solid #000000;padding-left:0.111in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;text-indent:6pt;border-left:0.75pt solid #000000;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;margin-right:0.08333333333333333in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">Decking and</span></p><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:1pt;margin-right:0.08333333333333333in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">Accessories</span></p></td>
      <td style="border-top:0.75pt solid #000000;padding-top:0in;border-right:0.75pt solid #000000;text-indent:9.2pt;padding-left:0in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0.028in;"><p style="margin-left:9.2pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Our principal decking products are Trex Signature</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-size:5.025pt;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">, Trex Transcend</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-size:5.025pt;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;Lineage</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-size:5.025pt;position:relative;font-kerning:none;min-width:fit-content;">&#153;</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">, Trex Transcend</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-size:5.025pt;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">,</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-size:5.025pt;position:relative;font-kerning:none;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Trex Select</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-size:5.025pt;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">, and Trex Enhance</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-size:5.025pt;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">. In addition, our Trex Transcend decking product can also be used as cladding. Our high-performance, low-maintenance, eco-friendly composite decking products are comprised of a blend of 95 percent reclaimed wood fibers and recycled polyethylene film and feature a protective polymer shell for enhanced protection against fading, staining, mold, and scratching. Trex Signature decking offers realistic woodgrain aesthetics that raise the bar for beauty, performance, and sustainability and is available in two luxurious hues inspired by stunning natural settings. Trex Transcend Lineage is the next generation of design and performance in composite decking and is available in seven luxurious, on-trend hues inspired by some of the most picturesque locales in the United States. Our Trex Transcend decking provides elevated aesthetics paired with the highest level of performance and is available in six multi-tonal monochromatic classical earth tones and premium tropical colors. Trex Select decking offers the perfect pairing of price and minimal maintenance and is available in two nature-inspired earth tone colors. Our Trex Enhance boards pair the beauty of authentic wood-grain appearance with the durability of composite with minimal maintenance and the affordability of wood and is available in natural and basic colors.</span></p><p style="margin-left:9.2pt;text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p><p style="margin-left:9.2pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">We also offer accessories to our decking products. The Trex Hideaway</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-size:5.025pt;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:7.5pt;font-kerning:none;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Fastener Collection</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-size:5.025pt;position:relative;font-kerning:none;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">, offers solutions for every composite deck fastening and finishing need, featuring color-matched screws and plugs, specially engineered bits, depth setters, and clips, designed to make installation easier and more efficient while delivering a clean, cohesive aesthetic. Trex DeckLighting</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-size:5.025pt;position:relative;font-kerning:none;min-width:fit-content;">&#153;</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">, an outdoor lighting system, is a line of energy-efficient LED dimmable deck lighting designed to use 75% less energy compared to incandescent lighting. It can be installed into the railing, stair risers, or the deck itself. The line includes a post cap light, deck rail light, riser light, a soffit light, and a recessed deck light.</span></p><p style="margin-left:9.2pt;text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:1pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     </tr>
     <tr style="height:11pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;border-right:0.75pt solid #000000;text-indent:6pt;border-left:0.75pt solid #000000;padding-left:0.111in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;margin-right:0.08333333333333333in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">Railing</span></p></td>
      <td style="padding-top:0in;border-right:0.75pt solid #000000;text-indent:9.2pt;padding-left:0in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0.028in;"><p style="margin-left:9.2pt;text-indent:0;font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-kerning:none;min-width:fit-content;">Our railing products are Trex Signature</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-kerning:none;min-width:fit-content;">&#160;X-Series</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">&#153;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-kerning:none;min-width:fit-content;">&#160;Railing, Trex Signature</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-kerning:none;min-width:fit-content;">&#160;aluminum railing,</span><span style="color:#000000;white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-kerning:none;min-width:fit-content;">Trex Transcend Railing, Trex Select</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-kerning:none;min-width:fit-content;">&#160;Railing, Trex Select</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-kerning:none;min-width:fit-content;">&#160;T-Rail, and Trex Enhance</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">&#153;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-kerning:none;min-width:fit-content;">&#160;Railing. Our high-performance cable rail, frameless glass rail, composite, and aluminum-deck railing kits and systems are sustainably manufactured, easy to install, and durable. Trex railing systems are built with the same durability as Trex decking and will not rot, warp, peel, or splinter and resist fading and corrosion. Trex Signature X-Series, made from approximately 30 percent recycled materials, is available in Charcoal Black with stainless steel or glass infill. Trex Signature aluminum railing, made from a minimum of 40 percent recycled content, is available in three colors and designed for consumers who want a sleek, contemporary look.</span><span style="color:#000000;white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-kerning:none;min-width:fit-content;">Trex Transcend Railing, made from approximately 40 percent recycled content, is available in four colors that complement our Trex decking products. Trex Select</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-kerning:none;min-width:fit-content;">&#160;Railing, made from approximately 40 percent recycled content, is offered in a white finish and is ideal for consumers who desire a simple clean finished look for their deck. Trex Select</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-kerning:none;min-width:fit-content;">&#160;T-Rail, made from a minimum of 40 percent recycled materials, is available in square composite balusters in Classic White for a cohesive, coordinated look, or round aluminum balusters in Charcoal Black for a more modern contrast. Trex Enhance</span><span style="color:#000000;top:-4.6899999999999995pt;white-space:pre-wrap;font-size:6.7pt;position:relative;font-kerning:none;min-width:fit-content;">&#153;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-kerning:none;min-width:fit-content;">&#160;railing is available in four composite colors, and an Enhance Steel line was recently introduced in Charcoal Black, to expand the Trex addressable market.</span></p><p style="margin-left:9.2pt;text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:1pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#cccccc;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;border-right:0.75pt solid #000000;text-indent:6pt;border-left:0.75pt solid #000000;padding-left:0.111in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;margin-right:0.08333333333333333in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">Fencing</span></p></td>
      <td style="padding-top:0in;border-right:0.75pt solid #000000;text-indent:9.2pt;padding-left:0in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0.028in;"><p style="margin-left:9.2pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Our Trex Seclusions</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-size:5.025pt;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;composite fencing product is offered through two specialty distributors. This product consists of structural posts, bottom rails, pickets, top rails, and decorative post caps. The top and bottom rails of Trex fencing are designed to provide a &#8220;picture frame&#8217; element and the deep rich colors have a matte surface to prevent harsh sunlight reflections.</span></p><p style="margin-left:9.2pt;text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:1pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">16</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">We are a licensor in a number of licensing agreements with third parties to manufacture and sell products under the Trex trademark. Our licensed products are:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:98.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:30.612%;box-sizing:content-box;"/>
      <td style="width:69.388%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:10pt;background-color:#cccccc;word-break:break-word;white-space:pre-wrap;">
      <td style="border-top:0.75pt solid #000000;padding-top:0in;border-right:0.75pt solid #000000;padding-left:0.111in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;text-indent:6pt;border-left:0.75pt solid #000000;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;margin-right:0.08333333333333333in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">Trex</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-weight:bold;font-size:5.025pt;font-style:italic;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">&#160;Outdoor Furniture</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-weight:bold;font-size:5.025pt;font-style:italic;position:relative;font-kerning:none;min-width:fit-content;">&#153;</span></p></td>
      <td style="border-top:0.75pt solid #000000;padding-top:0in;border-right:0.75pt solid #000000;text-indent:8.45pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0.028in;"><p style="margin-left:8.45pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">A line of outdoor furniture products manufactured and sold by PolyWood, Inc.</span></p><p style="margin-left:8.45pt;text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:1pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;border-right:0.75pt solid #000000;text-indent:6pt;border-left:0.75pt solid #000000;padding-left:0.111in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;margin-right:0.08333333333333333in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">Trex</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-weight:bold;font-size:5.025pt;font-style:italic;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">&#160;RainEscape</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-weight:bold;font-size:5.025pt;font-style:italic;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">, Trex</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-weight:bold;font-size:5.025pt;font-style:italic;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">&#160;Protect, Trex</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-weight:bold;font-size:5.025pt;font-style:italic;position:relative;font-kerning:none;min-width:fit-content;">&#174; </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">RainEscape</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-weight:bold;font-size:5.025pt;font-style:italic;position:relative;font-kerning:none;min-width:fit-content;">&#174; </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">Soffit Light, and Trex</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-weight:bold;font-size:5.025pt;font-style:italic;position:relative;font-kerning:none;min-width:fit-content;">&#174; </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">Seal</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-weight:bold;font-size:5.025pt;font-style:italic;position:relative;font-kerning:none;min-width:fit-content;">&#153; </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">Ledger Flashing Tape</span></p></td>
      <td style="padding-top:0in;border-right:0.75pt solid #000000;text-indent:8.45pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0.028in;"><p style="margin-left:8.45pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">An above joist deck drainage system manufactured and sold by IBP, LLC. Trex Protect Joist, Beam and Rim tape is a self-adhesive butyl tape that protects wooden deck framing/substructure elements. Trex RainEscape Soffit Light is a plug-and-play LED Soffit light that is installed in the under-deck ceiling of a two-story deck. Trex Seal Ledger Flashing tape is butyl flashing tape with an aluminum liner.</span></p><p style="margin-left:8.45pt;text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:1pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#cccccc;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;border-right:0.75pt solid #000000;text-indent:6pt;border-left:0.75pt solid #000000;padding-left:0.111in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;margin-right:0.08333333333333333in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">Trex</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-weight:bold;font-size:5.025pt;font-style:italic;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">&#160;Pergola</span></p></td>
      <td style="padding-top:0in;border-right:0.75pt solid #000000;text-indent:8.45pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0.028in;"><p style="margin-left:8.45pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Pergolas made from low maintenance cellular PVC and all-aluminum product, manufactured by Home &amp; Leisure, Inc. dba Structureworks Fabrication.</span></p><p style="margin-left:8.45pt;text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:1pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;border-right:0.75pt solid #000000;text-indent:6pt;border-left:0.75pt solid #000000;padding-left:0.111in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;margin-right:0.08333333333333333in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">Trex</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-weight:bold;font-size:5.025pt;font-style:italic;position:relative;font-kerning:none;min-width:fit-content;">&#174; </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">Lattice</span></p></td>
      <td style="padding-top:0in;border-right:0.75pt solid #000000;text-indent:8.45pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0.028in;"><p style="margin-left:8.45pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Outdoor lattice boards manufactured and sold by Structureworks Fabrication.</span></p><p style="margin-left:8.45pt;text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:1pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#cccccc;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;border-right:0.75pt solid #000000;text-indent:6pt;border-left:0.75pt solid #000000;padding-left:0.111in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;margin-right:0.08333333333333333in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">Trex</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-weight:bold;font-size:5.025pt;font-style:italic;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">&#160;Cornhole</span></p></td>
      <td style="padding-top:0in;border-right:0.75pt solid #000000;text-indent:8.45pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0.028in;"><p style="margin-left:8.45pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cornhole boards manufactured and sold by Johnson Enterprises, LLC. under a Trademark License Agreements with Trex Company, Inc.</span></p><p style="margin-left:8.45pt;text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:1pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;border-right:0.75pt solid #000000;text-indent:6pt;border-left:0.75pt solid #000000;padding-left:0.111in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;margin-right:0.08333333333333333in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">Trex</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-weight:bold;font-size:5.025pt;font-style:italic;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">&#160;Blade</span></p></td>
      <td style="padding-top:0in;border-right:0.75pt solid #000000;text-indent:8.45pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0.028in;"><p style="margin-left:8.45pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">A specialty saw blade for wood-alternative composite decking manufactured and sold by Freud America, Inc.</span></p><p style="margin-left:8.45pt;text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:1pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#cccccc;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;border-right:0.75pt solid #000000;text-indent:6pt;border-left:0.75pt solid #000000;padding-left:0.111in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;margin-right:0.08333333333333333in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">Trex</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-weight:bold;font-size:5.025pt;font-style:italic;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">&#160;Spiral Stairs</span></p></td>
      <td style="padding-top:0in;border-right:0.75pt solid #000000;text-indent:8.45pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0.028in;"><p style="margin-left:8.45pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">A staircase alternative for use with all deck substructures manufactured and sold by SS Industries dba Paragon Stairs.</span></p><p style="margin-left:8.45pt;text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:1pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;border-right:0.75pt solid #000000;text-indent:6pt;border-left:0.75pt solid #000000;padding-left:0.111in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;margin-right:0.08333333333333333in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">Trex</span><span style="color:#000000;top:-3.5175pt;white-space:pre-wrap;font-weight:bold;font-size:5.025pt;font-style:italic;position:relative;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-style:italic;font-kerning:none;min-width:fit-content;">&#160;Outdoor Kitchens</span></p></td>
      <td style="padding-top:0in;border-right:0.75pt solid #000000;text-indent:8.45pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0.028in;"><p style="margin-left:8.45pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Outdoor kitchen cabinetry manufactured and sold by Danver Outdoor Kitchens.</span></p><p style="margin-left:8.45pt;text-indent:0;font-size:6pt;margin-top:0;font-family:Times New Roman;margin-bottom:1pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">HIGHLIGHTS AND FINANCIAL PERFORMANCE</span></p><p style="text-indent:36pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Highlights:</span></p><div class="item-list-element-wrapper" style="margin-left:0.75in;display:flex;margin-top:4pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.25in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:3.7033333333333336%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Trex Named America's Most Trusted</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"> Outdoor Decking </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">for fifth consecutive year, according to a nationwide study by Lifestory Research.</span></div></div><div class="item-list-element-wrapper" style="margin-left:0.75in;display:flex;margin-top:4pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.25in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:3.7033333333333336%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Trex Expands Mid-Tier Composite Decking Options with New Performance Engineered</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">&#153;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"> Boards</span><span style="color:#000000;white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">.</span><span style="color:#000000;white-space:pre-wrap;font-size:7.5pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Additions to the Trex Select</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:5.025pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> decking line include brightened colors, updated design aesthetics, and Trex's proprietary SunComfortable</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#153;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> technology.</span></div></div><div class="item-list-element-wrapper" style="margin-left:0.75in;display:flex;margin-top:4pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.25in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:3.7033333333333336%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Trex Ranked Among Barron's 100 Most Sustainable Companies for 2025.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Trex moved up 20 spots in its 2nd appearance on the Barron's List of 100 Most Sustainable Companies for 2025.</span></div></div><div class="item-list-element-wrapper" style="margin-left:0.75in;display:flex;margin-top:4pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.25in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:3.7033333333333336%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Trex Releases 2025 Outdoor Living Forecast.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> In February 2025, Trex released its 2025 Outdoor Living Forecast highlighting five outdoor trends it expects to shape backyards in the coming year.</span></div></div><div class="item-list-element-wrapper" style="margin-left:0.75in;display:flex;margin-top:4pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.25in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:3.7033333333333336%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Trex Earned Top Honors at Environment + Energy Leader Awards.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Trex</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Composite Decking was named Product of the Year and Judge's Choice Award as the top-scoring entry in the Consumer + Residential category.</span></div></div><div class="item-list-element-wrapper" style="margin-left:0.75in;display:flex;margin-top:4pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.25in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:3.7033333333333336%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">&#8226;</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Trex named Green Builder Media's Sustainable Brand Leader</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> in the decking category. Trex Select</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> was also selected by Green Builder editors as one of the 50 most sustainable products of the year.</span></div></div><p style="text-indent:22.5pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Financial performance. The following table presents highlights of our financial performance for the quarter and year-to-date:</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:90.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:50.37%;box-sizing:content-box;"/>
      <td style="width:1.22%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:9.182%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.22%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:9.182%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.22%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:8.942%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:9.662%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31,</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">$ Change</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">% Change</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;">($ 000s omitted, except per share data)</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net sales</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">339,993</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">373,635</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(33,642</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(9.0</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)%</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Gross profit</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">137,731</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">169,612</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(31,881</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(18.8</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)%</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net income</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">60,434</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">89,070</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(28,636</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(32.1</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)%</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">EBITDA*</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">95,912</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">133,166</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(37,254</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(28.0</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)%</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Diluted earnings per share</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.56</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.82</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(0.26</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(31.7</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)%</span></p></td>
     </tr>
     <tr style="background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:11pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-family:'Calibri',sans-serif;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">17</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="text-indent:55.1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">*A reconciliation of Net Income (GAAP) to EBITDA (non-GAAP) is presented on page 19 of this document under &#8220;Net Income and Earnings Before Interest, Taxes, Depreciation and Amortization (EBITDA).&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Capital expenditures</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">. During the three months ended March 31, 2025, our capital expenditures were $79.5 million primarily related to $64.2 million for the Arkansas manufacturing facility, $4.4 million in cost reduction initiatives, and $7.4 million in capacity expansion in our existing facilities and safety, environmental and general support.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">RESULTS OF OPERATIONS</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">General.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Our results of operations are affected by a number of factors, including, but not limited to, the cost to manufacture and distribute products, cost of raw materials, inflation, interest rates, tariffs, consumer spending and preferences, the impact of any supply chain disruptions, economic conditions, and any adverse effects from global health pandemics and geopolitical conflicts.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">   </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Net Sales</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">. Net sales consist of sales, net of discounts. The level of net sales is principally affected by sales volume and the prices paid for Trex products. Trex operating results have historically varied from quarter to quarter. Seasonal, erratic or prolonged adverse weather conditions in certain geographic regions reduce the level of home and commercial improvement and residential and commercial construction and can shift sales of our products to a later period or decrease overall sales in affected locations. As part of our normal business practice and consistent with industry practice, we have historically provided our distributors and dealers of our Trex products incentives to build inventory levels before the start of the prime deck-building season to ensure adequate availability of our product to meet anticipated seasonal consumer demand and to enable production planning. These incentives include payment discounts, favorable payment terms, price discounts, or volume rebates on specified products and other incentives based on increases in purchases as part of specific promotional programs. The timing of our incentive programs can significantly impact sales, receivables and inventory levels during the offering period.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Gross Profit. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Gross profit represents the difference between net sales and cost of sales. Cost of sales consists of raw material costs, direct labor costs, manufacturing costs, subcontract costs and freight. Raw material costs generally include the costs to purchase and transport reclaimed wood fiber, reclaimed polyethylene, pigmentation for coloring our products, and commodities used in the production of railing. Direct labor costs include wages and benefits of personnel engaged in the manufacturing process. Manufacturing costs consist of costs of depreciation, utilities, maintenance supplies and repairs, indirect labor, including wages and benefits, and warehouse and equipment rental activities.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">         Less than 5% of our cost of sales is projected to be impacted by tariffs, the majority of tariffs are related to purchases of aluminum and steel used in our railing and fastening products. We have and will further mitigate some of the impact on our cost of sales through higher levels of existing pre-tariff inventory and supplier negotiations.</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Selling, General and Administrative Expenses. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The largest component of selling, general and administrative expenses is personnel related costs, which includes salaries, commissions, incentive compensation, and benefits of personnel engaged in sales and marketing, accounting, information technology, corporate operations, research and development, and other business functions. Another component of selling, general and administrative expenses is branding and other sales and marketing costs, which are used to build brand awareness. These costs consist primarily of advertising, merchandising, and other promotional costs. Other general and administrative expenses include professional fees, office occupancy costs attributable to the business functions previously referenced, and consumer relations expenses. As a percentage of net sales, selling, general and administrative expenses may vary from quarter to quarter due, in part, to the seasonality of our business.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Below is the discussion and analysis of our operating results and material changes in our operating results for the three months ended March 31, 2025 (2025 quarter) compared to the three months ended March 31, 2024 (2024 quarter).</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Three Months Ended March 31, 2025 Compared To The Three Months Ended March 31, 2024</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"> </span></p><p style="margin-left:36pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Net Sales</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:90.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:50.38%;box-sizing:content-box;"/>
      <td style="width:1.22%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:9.184000000000001%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.22%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:9.184000000000001%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.22%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:8.944%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:9.645%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">$ Change</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">% Change</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="14" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(dollars in thousands)</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net sales</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">339,993</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">373,635</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(33,642</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(9.0</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)%</span></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Net sales decreased by $33.6 million, or 9%, in the 2025 quarter compared to the 2024 quarter. The decrease was substantially due to a decrease in volume. The 2024 quarter included $40 million in channel inventory build which did not reoccur in the 2025 quarter as the result of our revised inventory strategy.</span></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">18</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="margin-left:36pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Gross Profit</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:90.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:50.38%;box-sizing:content-box;"/>
      <td style="width:1.22%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:9.184%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.22%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:9.184%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.22%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:8.944%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:9.645%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">$ Change</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">% Change</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="14" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(dollars in thousands)</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cost of sales</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">202,262</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">204,023</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(1,761</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(0.9</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)%</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">% of total net sales</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">59.5</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">54.6</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Gross profit</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">137,731</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">169,612</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(31,881</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(18.8</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)%</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Gross margin</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">40.5</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">45.4</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Gross profit as a percentage of net sales, gross margin, was 40.5% in the 2025 quarter compared to 45.4% in the 2024 quarter. The decrease was primarily the result of lower production year over year as we level load our facilities and changes to our production process driven by refinements made to our Enhance</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> decking.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="margin-left:36pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Selling, General and Administrative Expenses</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:90.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:50.38%;box-sizing:content-box;"/>
      <td style="width:1.22%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:9.184%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.22%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:9.184%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.22%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:8.944%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:9.645%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">$ Change</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">% Change</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="14" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(dollars in thousands)</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Selling, general and administrative expenses</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">56,068</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">50,600</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5,468</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10.8</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">% of total net sales</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">16.5</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">13.5</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Selling, general and administrative expenses increased $5.5 million to $56.1 million, or 16.5% of net sales, in the 2025 quarter. The increase was primarily related to a $3.4 million increase in branding, a $1.0 million increase in personnel related expenses, $1.0 million in start-up expenses related to Arkansas, and $0.5 million related to ERP enhancements.</span></p><p style="margin-left:36pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Provision for Income Taxes</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:90.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:50.38%;box-sizing:content-box;"/>
      <td style="width:1.22%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:9.184%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.22%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:9.184%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.22%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:8.944%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:9.645%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">$ Change</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">% Change</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="14" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(dollars in thousands)</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Provision for income taxes</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">21,153</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">29,947</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(8,794</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(29.4</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)%</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Effective tax rate</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">25.9</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">25.2</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The effective tax rate for the 2025 quarter was comparable to the 2024 quarter and was 25.9% and 25.2%, respectively.</span></p><p style="margin-left:36pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Net Income and Earnings Before Interest, Taxes, Depreciation and Amortization (EBITDA)</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">1</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> (dollars in thousands)</span></p><p style="text-indent:36pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Reconciliation of net income (GAAP) to EBITDA (non-GAAP):</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:40%;box-sizing:content-box;"/>
      <td style="width:1.429%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:25.143%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:2.857%;box-sizing:content-box;"/>
      <td style="width:2.857%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:23.715%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31, 2025</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;border-right:0.5pt solid #000000;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended <br/>March 31, 2024</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net income</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">60,434</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;border-right:0.5pt solid #000000;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">89,070</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Interest expense (income), net</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">76</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;border-right:0.5pt solid #000000;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(5</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Income tax expense</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">21,153</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;border-right:0.5pt solid #000000;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">29,947</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Depreciation and amortization</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">14,249</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;border-right:0.5pt solid #000000;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">14,154</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">EBITDA</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">95,912</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;border-right:0.5pt solid #000000;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">133,166</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">__________________________</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.03pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">1</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">EBITDA represents net income before interest, income taxes, depreciation and amortization. EBITDA is not a measurement of financial performance under accounting principles generally accepted in the United States (GAAP). We have included data with respect to EBITDA because management believes it facilitates performance comparison between the Company and its competitors. Management considers EBITDA to be an important supplemental indicator of our core operating performance because it eliminates interest, income taxes, and depreciation and amortization charges to net income. In relation to competitors, EBITDA eliminates differences among companies in capitalization and tax structures, capital investment cycles and ages of related assets. For these reasons, management believes that EBITDA provides important information regarding the operating performance of the Company. Non-GAAP financial measures should be viewed in addition to, and not as an alternative for, the Company&#8217;s reported results prepared in accordance with GAAP and are not meant to be considered superior to or a substitute for our GAAP results.</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">19</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:90.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:33.311%;box-sizing:content-box;"/>
      <td style="width:16.878%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:9.569%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.199%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:9.569%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.199%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:9.569%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.199%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:9.503%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">$ Change</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">% Change</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="14" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(dollars in thousands)</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">EBITDA</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">95,912</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">133,166</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(37,254</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(28.0</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)%</span></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">EBITDA decreased 28% to $95.9 million for the 2025 quarter compared to $133.2 million for the 2024 quarter. The decrease in EBITDA was driven primarily by lower net sales and gross profit.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">LIQUIDITY AND CAPITAL RESOURCES</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">We finance operations and growth primarily with cash flows from operations, borrowings under our revolving credit facilities, operating leases and normal trade credit terms from operating activities. At March 31, 2025, we had $5.0 million of cash and cash equivalents.</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">S</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">ources and Uses of Cash.  </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table summarizes our cash flows from operating, investing and financing activities (in thousands):</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:66.993%;box-sizing:content-box;"/>
      <td style="width:1.62%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:12.883000000000001%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.62%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:12.883000000000001%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31,</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net cash used in operating activities</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(154,013</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(174,044</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net cash used in investing activities</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(79,965</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(37,614</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net cash provided by financing activities</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">237,649</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">212,752</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net increase in cash and cash equivalents</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,671</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,094</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
    </table><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Operating Activities</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Cash used in operations was $154 million during the 2025 three-month period compared to cash used in operations of $174 million during the 2024 three-month period. The $20 million decrease in cash used in operating activities was primarily related to a decrease in inventories and reduced profitability.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Investing Activities</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Capital expenditures in the 2025 three-month period were $79.5 million primarily related to $64.2 million for the Arkansas manufacturing facility, $4.4 million in cost reduction initiatives, and $7.4 million in capacity expansion in our existing facilities and safety, environmental and general support.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Financing Activities</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Net cash provided by financing activities in the 2025 three-month period consisted primarily of net borrowings under our line of credit.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Stock Repurchase Program. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">On February 16, 2018, the Trex Board of Directors adopted a stock repurchase program of up to 11.6 million shares of its outstanding common stock (Stock Repurchase Program). The Company repurchased 10.1 million shares under the Stock Repurchase Program. On May 4, 2023, the Trex Board of Directors adopted a new stock repurchase program (2023 Stock Repurchase Program) of up to 10.8 million shares of its outstanding common stock, and terminated the existing Stock Repurchase Program. The 2023 Stock Repurchase Program has no set expiration date and during the three months ended March 31, 2025 the Company did not repurchase any shares of its common stock under the 2023 Stock Repurchase Program.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Revolving Credit Facility</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"> Indebtedness prior to October 10, 2024.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> On May 18, 2022, the Company entered into a Credit Agreement (Credit Agreement) with certain lending parties thereto (Lenders) to amend and restate the Fourth Amended and Restated Credit Agreement dated as of November 5, 2019. Under the Credit Agreement, the Lenders agreed to provide the Company with one or more Revolving Loans in a collective maximum principal amount of $400,000,000 (Loan Limit) throughout the term, which ends May 18, 2027 (Term). Included within the Loan Limit are sublimits for a Letter of Credit facility in an amount not to exceed $60,000,000; and Swing Line Loans in an aggregate principal amount at any time outstanding not to exceed $20,000,000. The Revolving Loans, the Letter of Credit facility and the Swing Line Loans are for the purpose of raising working capital and supporting general business operations.</span></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">20</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">On December 22, 2022, the Company entered into a First Amendment to the Credit Agreement (First Amendment). As a part of the First Amendment, the Credit Agreement was amended and restated to provide for an additional Revolving B Loan (as hereinafter defined). Under the First Amendment, the Lenders agreed to provide the Company with a Revolving B Loan consisting of one or more revolving loans in a collective maximum principal amount of $150,000,000 (Revolving B Loan Limit) throughout the term, which ended December 22, 2024 (Revolving B Loan Term). Previously, under the Credit Agreement, there was no Revolving B Loan. The First Amendment also provided that TD Bank, N.A. would serve as Syndication Agent.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In conjunction with the First Amendment, on December 22, 2022, the Credit Agreement was amended and restated to refer to the original loan as the Revolving A Loan. The amended and restated Credit Agreement was made an Exhibit A to the First Amendment. All of the terms of the Credit Agreement apply to the Revolving B Loan.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The amended Credit Agreement provides the Company, in the aggregate, the ability to borrow an amount up to the Revolving A Loan Limit during the Revolving A Loan Term (which ends May 18, 2027) and Revolving B Loan Limit during the Revolving B Loan Term. The Company is not obligated to borrow any amount under the revolving loans. Within the respective loan limit, the Company may borrow, repay and reborrow at any time or from time to time while the notes issued pursuant to the Credit Agreement are in effect.</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Base Rate Loans (as defined in the Credit Agreement) under the Revolving A Loan and the Swing Line Loans accrue interest at the Base Rate plus the Applicable Rate (as defined in the Credit Agreement) and Term SOFR Loans for the Revolving Loans accrue interest at the rate per annum equal to the sum of Term SOFR for such interest period plus the Applicable Rate (as defined in the Credit Agreement). The Base Rate for any day is a fluctuating rate per annum equal to the highest of (a) the Federal Funds Rate plus 0.50%, (b) the rate of interest in effect for such day as publicly announced from time to time by BOA as its prime rate, and (c) the Term SOFR plus 1.0% subject to certain interest rate floors. Repayment of all then outstanding principal, interest, fees and costs is due at the end of the Term.</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">With respect to Revolving B Loans (as defined in the First Amendment), for any day, the rate per annum is a tiered pricing based upon the Consolidated Debt to Consolidated EBITDA Ratio. The applicable rate for Revolving B Loans that are Base Rate Loans range between 1.20% and 2.15% and the applicable rate for Revolving B Loans that are Term SOFR/Term SOFR Daily Floating Rate range between 0.20% and 1.15%.</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Under the terms of the Security and Pledge Agreement, the Company, subject to certain permitted encumbrances, as collateral security for the above-stated loans and all other present and future indebtedness of the Company owing to the Lenders grants a continuing security interest in certain collateral described and defined in the Security and Pledge Agreement but excluding the Excluded Property (as defined in the Security and Pledge Agreement).</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Indebtedness on and after October 10, 2024.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> On October 10, 2024, Trex entered into a Second Amendment to the Credit Agreement (Second Amendment) with certain lending parties thereto (Lenders) to amend that Credit Agreement dated as of May 18, 2022, as amended by that certain First Amendment dated as of December 22, 2022.</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Second Amendment provides us with Revolving A Loans in the maximum principal amount of $400,000,000 (Revolving A Loans), Revolving B Loans in the maximum principal amount of $150,000,000 (Revolving B Loans), and Letters of Credit and Swing Line Loans (as defined in the Credit Agreement). The Second Amendment extends the maturity date of the Revolving B Loans from December 22, 2024 to December 22, 2026.</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Base Rate Loans (as defined in the Credit Agreement) under the Revolving A Loan and the Swing Line Loans accrue interest at the Base Rate plus the Applicable Rate (as defined in the Credit Agreement) and Term SOFR Loans for the Revolving Loans accrue interest at the rate per annum equal to the sum of Term SOFR for such interest period plus the Applicable Rate (as defined in the Credit Agreement). The Base Rate for any day is a fluctuating rate per annum equal to the highest of (a) the Federal Funds Rate plus 0.50%, (b) the rate of interest in effect for such day as publicly announced from time to time by BOA as its prime rate, and (c) the Term SOFR plus 1.0% subject to certain interest rate floors. Repayment of all then outstanding principal, interest, fees and costs is due at the end of the Term (as defined in the Credit Agreement).</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">With respect to Revolving B Loans (as defined in the Credit Agreement), for any day, the rate per annum is a tiered pricing based upon the Consolidated Debt to Consolidated EBITDA Ratio. The applicable rate for Revolving B Loans that are Base Rate Loans range between 0.20% and 1.15%. and the applicable rate for Revolving B Loans that are Term SOFR/Term SOFR Daily Floating Rate range between 1.20% and 2.15%.</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">At March 31, 2025, we had $443.9 million in outstanding borrowings under the revolving credit facility and borrowing capacity under the facility of $106.1 million.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">21</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="text-indent:24.5pt;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Compliance with Debt Covenants and Restrictions. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Pursuant to the terms of the Credit Agreement, the Company, is subject to certain loan compliance covenants. The Company was in compliance with all covenants at March 31, 2025. Failure to comply with the financial covenants could be considered a default of repayment obligations and, among other remedies, could accelerate payment of any amounts outstanding.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">We believe that cash on hand, cash from operations and borrowings expected to be available under our revolving credit facilities will provide sufficient funds to fund planned capital expenditures, make scheduled principal and interest payments, fund warranty payments, and meet other cash requirements. We currently expect to fund future capital expenditures from operations and financing activities. The actual amount and timing of future capital requirements may differ materially from our estimate depending on the demand for Trex products and new market developments and opportunities.</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Capital Requirements. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Our capital expenditure guidance for 2025 is $190 million to $210 million. In addition to the construction of the Arkansas facility, our capital allocation priorities for 2025 include expenditures for internal growth opportunities, manufacturing cost reductions, upgrading equipment and support systems, and acquisitions which fit our long-term growth strategy as we continue to evaluate opportunities that would be a good strategic fit for Trex, and return of capital to shareholders.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">As previously announced, the Company anticipates spending approximately $550 million on the Arkansas facility, of which we have already invested $451 million.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Inventory in Distribution Channels. </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">We sell our decking and railing products through a tiered distribution system. We have over 50 distributors worldwide and two national retail merchandisers to which we sell our products. The distributors in turn sell the products to dealers and retail locations who in turn sell the products to end users. Significant increases in inventory levels in the distribution channel without a corresponding change in end-use demand could have an adverse effect on future sales.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Product Warranty.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> We warrant that for the applicable warranty period our products, when properly installed, used and maintained, will be free from material defects in workmanship and materials and our decking, cladding, fascia and railing products will not split, splinter, rot or suffer structural damage from termites or fungal decay.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Products sold on or after January 1, 2023: The warranty period for residential use is 50 years for Transcend</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:5.025pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> decking, 35 years for Select</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:5.025pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> decking and Universal Fascia, and 25 years for Enhance</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:5.025pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> decking and Transcend, Select, Enhance and Signature</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:5.025pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> railing. The warranty period for commercial use is 10 years, excluding Signature railing and Transcend cladding, which each have a warranty period of 25 years. We further warrant that Trex Transcend, Trex Enhance and Trex Select decking and cladding and Universal Fascia products will not fade in color from light and weathering exposure more than a certain amount and will be resistant to permanent staining from food and beverage substances or mold and mildew, provided the stain is cleaned within seven days of appearance, for the warranty period referred to above. If there is a breach of such warranties, we have an obligation either to replace the defective product or refund the purchase price.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Products sold prior to January 1, 2023: The warranty period is 25 years for residential use and 10 years for commercial use. With respect to Trex Signature railing, the warranty period is 25 years for both residential and commercial use. We further warrant that Trex Transcend, Trex Enhance, Trex Select and Universal Fascia products will not fade in color more than a certain amount and will be resistant to permanent staining from food substances or mold, provided the stain is cleaned within seven days of appearance, for the warranty period referred to above. If there is a breach of such warranties, we have an obligation either to replace the defective product or refund the purchase price.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">We maintain a warranty reserve for the settlement of our product warranty claims. We accrue for the estimated cost of product warranty claims at the time revenue is recognized based on such factors as historical claims experience and estimated future claims. We review and adjust these estimates, if necessary, based on the differences between actual experience and historical estimates. Additionally, we accrue for warranty costs associated with occasional or unanticipated product quality issues if a loss is probable and can be reasonably estimated.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">We continue to receive and settle claims for decking products manufactured at our Nevada facility prior to 2007 that exhibit surface flaking and maintain a warranty reserve to provide for the settlement of these claims. Estimating the warranty reserve for surface flaking claims requires us to estimate the number of claims to be settled with payment and the average cost to settle each claim. We monitor surface flaking claims activity each quarter for indications that our estimates require revision.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Seasonality</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">. The operating results for Trex have historically varied from quarter to quarter. Seasonal, erratic or prolonged adverse weather conditions in certain geographic regions may reduce the level of home improvement and construction activity and can shift sales of our products to a later period or decrease overall sales in affected locations. As part of its normal business practice and consistent with industry practice, Trex has historically offered incentive programs to its distributors and dealers to build inventory</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">22</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">levels before the start of the prime deck-building season in order to ensure adequate availability of its product to meet anticipated seasonal consumer demand. The seasonal effects are often offset by the positive effect of the incentive programs.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_3_quantitative_and_qualitative"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Item 3. Quantitative a</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">nd Qualitative Disclosures About Market Risk</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For information regarding our exposure to certain market risks, see &#8220;Quantitative and Qualitative Disclosures about Market Risk,&#8221; in Part II, Item 7A of the Company&#8217;s Annual Report on Form 10-K for the year ended December 31, 2024. There were no material changes to the Company&#8217;s market risk exposure during the three months ended March 31, 2025.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_4_controls_and_procedures"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Item 4. Control</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">s and Procedures</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company&#8217;s management, with the participation of its President and Chief Executive Officer, who is the Company&#8217;s principal executive officer, and its Senior Vice President and Chief Financial Officer, who is the Company&#8217;s principal financial officer, has evaluated the effectiveness of the Company&#8217;s disclosure controls and procedures as of March 31, 2025. Based on this evaluation, the President and Chief Executive Officer and the Senior Vice President and Chief Financial Officer have concluded that the Company&#8217;s disclosure controls and procedures are effective. There have been no changes in the Company&#8217;s internal control over financial reporting during the three-month period ended March 31, 2025, that have materially affected, or are reasonably likely to materially affect, the Company&#8217;s internal control over financial reporting.</span></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">23</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;" id="part_ii_other_information"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">PAR</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">T II</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">OTHER INFORMATION</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_1_legal_proceedings"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Item 1. L</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">egal Proceedings</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company has lawsuits, as well as other claims, pending against it which are ordinary routine litigation and claims incidental to the business. Management has evaluated the merits of these lawsuits and claims and believes that their ultimate resolution will not have a material effect on the Company&#8217;s consolidated financial condition, results of operations, liquidity or competitive position.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_2_unregistered_sales_of_equity"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Item 2. Unregistered</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Sales of Equity Securities and Use of Proceeds</span></p><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(c)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table provides information relating to the purchases of our common stock during the three months ended March 31, 2025 in accordance with Item 703 of Regulation S-K:  </span></div></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:90.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:38.822%;box-sizing:content-box;"/>
      <td style="width:1.111%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:11.311%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.111%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:11.333%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.111%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:11.333%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1.111%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:14.754999999999999%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Period</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(a)<br/>Total Number<br/>of Shares<br/>(or Units)<br/>Purchased (1)</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(b)<br/>Average Price<br/>Paid per Share<br/>(or Unit) ($)</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(c)<br/>Total Number<br/>of Shares<br/>(or Units)<br/>Purchased as<br/>Part of<br/>Publicly<br/>Announced<br/>Plans or<br/>Programs (2)</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">(d)<br/>Maximum<br/>Number<br/>of Shares<br/>(or Units)<br/>that May Yet<br/>Be Purchased<br/>Under the Plan<br/>or Program</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">January 1, 2025 &#8211; January 31, 2025</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8,954,464</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">February 1, 2025 &#8211; February 28, 2025</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8,954,464</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">March 1, 2025 &#8211; March 31, 2025</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">49,949</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">62.28</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8,954,464</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Quarterly period ended March 31, 2025</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">49,949</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
    </table><p style="padding-bottom:1pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;border-bottom:0.75pt solid;margin-right:5.5in;text-align:left;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div class="item-list-element-wrapper" style="display:flex;margin-top:2pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.25in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(1)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">During the three months ended March 31, 2025, 49,949 shares were withheld by, or delivered to, the Company pursuant to provisions in agreements with recipients of restricted stock granted under the Company&#8217;s 2014 and 2023 Stock Incentive Plan allowing the Company to withhold, or the recipient to deliver to the Company, the number of shares having the fair value equal to tax withholding due.</span></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.25in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:3.333%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(2)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">On May 4, 2023, the Trex Board of Directors adopted a new stock repurchase program of up to 10.8 million shares of its outstanding common stock, and terminated the existing Stock Repurchase Program. This repurchase program has no set expiration date and no shares were repurchased under the program during the three months ended March 31, 2025.</span></div></div><h2 style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_5_other_information"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Item 5. Othe</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">r Information</span></h2><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Insider Trading Arrangements</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:10pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">During the quarter ended March 31, 2025, </span><span style="font-size:10pt;font-family:Times New Roman;"><ix:nonNumeric id="F_8c84cdd0-e619-4f53-b9f1-86e33f4811fe" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="ecd:Rule10b51ArrAdoptedFlag" format="ixt:fixed-false"><ix:nonNumeric id="F_0ea6a11b-8922-4927-be50-daf0c9dba495" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="ecd:NonRule10b51ArrAdoptedFlag" format="ixt:fixed-false"><ix:nonNumeric id="F_326ca7cf-8d11-4e28-9cde-8e5b0f3ca3b7" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="ecd:Rule10b51ArrTrmntdFlag" format="ixt:fixed-false"><ix:nonNumeric id="F_41bcff31-605a-4066-9131-d5c8078cdb24" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="ecd:NonRule10b51ArrTrmntdFlag" format="ixt:fixed-false"><ix:nonNumeric id="F_34f2067c-3b12-41f3-95ce-acaf77f60fb5" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="trex:Rule10B51ArrModifiedFlag" format="ixt:fixed-false"><ix:nonNumeric id="F_5188a405-9fc2-4924-a419-de8c03131322" contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146" name="trex:NonRule10B51ArrModifiedFlag" format="ixt:fixed-false"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">no</span></ix:nonNumeric></ix:nonNumeric></ix:nonNumeric></ix:nonNumeric></ix:nonNumeric></ix:nonNumeric></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">ne of our directors or officers (as defined in Rule 16a-1(f) of the Exchange Act) adopted, modified or terminated any contract, instruction or written plan for the purchase or sale of our securities that was intended to satisfy the affirmative defense conditions of Rule 10b5-1(c) of the Exchange Act or any non-Rule 10b5-1 trading arrangement (as defined in Item 408(c) of Regulation S-K).</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Submission of Matters to a Vote of Security Holders</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Trex held its Annual Meeting of Stockholders on May 6, 2025. Only holders of Trex common stock at the close of business on March 10, 2025 (Record Date) were entitled to vote at the Annual Meeting. As of the Record Date, there were 107,219,921 shares of common stock entitled to vote. A total of 98,384,912 shares of common stock (91.8%), constituting a quorum, were represented in person or by valid proxies at the Annual Meeting.</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The stockholders voted on three proposals at the Annual Meeting. The proposals are described in detail in the Company&#8217;s definitive proxy statement dated March 24, 2025. The final results for the votes regarding each proposal are set forth below.</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Proposal 1:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Trex stockholders elected three directors to the Board to serve for a three-year term until the 2028 annual meeting of stockholders and until their successors are duly elected and qualified. The votes regarding this proposal were as follows:</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">24</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;">
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:80.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:40.332%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:10.898%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:10.898%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:10.898%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:14.977%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">For</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Against</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Abstain</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Broker Non-Votes</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Bryan H. Fairbanks</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">90,434,504</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,710,655</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">102,035</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6,137,718</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Kristine L. Juster</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">78,964,624</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">13,068,438</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">214,132</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6,137,718</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">D. Christian Keffer</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">90,477,067</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,675,491</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">94,636</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6,137,718</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
    </table><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Proposal 2:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Trex stockholders approved, on an advisory basis, the compensation of the Company&#8217;s executive officers named in the Company&#8217;s definitive proxy statement dated March 24, 2025. The votes regarding this proposal were as follows:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:72.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:22.450999999999997%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:22.450999999999997%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:22.450999999999997%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:24.645999999999997%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">For</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Against</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Abstain</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Broker Non-Votes</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">83,040,121</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8,316,545</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">890,528</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6,137,718</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
    </table><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Proposal 3:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> Trex stockholders ratified the selection of Ernst &amp; Young LLP as the Company&#8217;s independent registered public accounting firm for the fiscal year ended December 31, 2025. The votes regarding this proposal were as follows:</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:73.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:22.184%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:22.184%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:24.019%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
      <td style="width:23.608%;box-sizing:content-box;"/>
      <td style="width:1%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">For</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Against</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Abstain</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Broker Non-Votes</span></p></td>
      <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">92,208,001</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6,130,987</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">45,924</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
      <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
    </table><h2 style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;" id="item_6_exhibits"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Item </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">6. Exhibits</span></h2><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">See Exhibit Index at the end of the Quarterly Report on Form 10-Q for the information required by this Item which is incorporated by reference.</span></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">25</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">SIGNATURE</span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">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><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;margin-right:auto;">
     <tr style="visibility:collapse;">
      <td style="width:2.96%;box-sizing:content-box;"/>
      <td style="width:47.82%;box-sizing:content-box;"/>
      <td style="width:1.44%;box-sizing:content-box;"/>
      <td style="width:2.96%;box-sizing:content-box;"/>
      <td style="width:44.82%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">TREX COMPANY, INC.</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Date:  May 8, 2025</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">By:</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">/s/ Brenda K. Lovcik</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Brenda K. Lovcik</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Senior Vice President and Chief Financial Officer</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;">Duly Authorized Officer and Principal Financial Officer</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">)</span></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">26</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="padding-top:0.5in;z-index:2;min-height:0.5in;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">EXHIBIT INDEX</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:86.0%;border-collapse:separate;margin-right:auto;">
     <tr style="background-color:#ffffff;font-weight:bold;visibility:collapse;">
      <td style="width:10.465%;box-sizing:content-box;"/>
      <td style="width:1.163%;box-sizing:content-box;"/>
      <td style="width:40.93%;box-sizing:content-box;"/>
      <td style="width:1.163%;box-sizing:content-box;"/>
      <td style="width:6.977%;box-sizing:content-box;"/>
      <td style="width:1.163%;box-sizing:content-box;"/>
      <td style="width:6.977%;box-sizing:content-box;"/>
      <td style="width:1.163%;box-sizing:content-box;"/>
      <td style="width:18.605%;box-sizing:content-box;"/>
      <td style="width:1.163%;box-sizing:content-box;"/>
      <td style="width:10.233%;box-sizing:content-box;"/>
     </tr>
     <tr style="height:8pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td colspan="7" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Incorporated by reference</span></p></td>
     </tr>
     <tr style="height:8pt;word-break:break-word;white-space:pre-wrap;text-align:left;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Exhibit</span></p><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Number</span></p><p style="border-top:1pt solid;padding-top:1pt;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Description</span></p><p style="border-top:1pt solid;padding-top:1pt;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Form</span></p><p style="border-top:1pt solid;padding-top:1pt;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Exhibit</span></p><p style="border-top:1pt solid;padding-top:1pt;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Filing Date</span></p><p style="border-top:1pt solid;padding-top:1pt;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">File No.</span></p><p style="border-top:1pt solid;padding-top:1pt;font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;&#160;&#160;&#160;3.1</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="https://www.sec.gov/Archives/edgar/data/1069878/000119312521233453/d158478dex36.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Restated Certificate of Incorporation of Trex Company, Inc. dated July 28, 2021.</span></a></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10-Q</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.6</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">August 2, 2021</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">001-14649</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;&#160;&#160;&#160;3.2</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="https://www.sec.gov/Archives/edgar/data/1069878/000119312522145117/d336988dex32.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">First Certificate of Amendment to the Restated Certificate of Incorporation of Trex Company, Inc. dated May 5, 2022</span></a></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10-Q</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.2</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">May 9, 2022</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">001-14649</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;&#160;&#160;&#160;3.3</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="https://www.sec.gov/Archives/edgar/data/1069878/000119312524046315/d667935dex33.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Amended and Restated By-Laws of the Company dated February 21, 2024</span></a></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10-K</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.3</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">February 26, 2024</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">001-14649</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;&#160;31.1*</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="trex-ex31_1.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Certification of Chief Executive Officer of the Company pursuant to Rule 13a-14(a) under the Securities Exchange Act of 1934.</span></a><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;&#160;31.2*</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="trex-ex31_2.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Certification of Chief Financial Officer of the Company pursuant to Rule 13a-14(a) under the Securities Exchange Act of 1934.</span><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></a></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;&#160;32***</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><a href="trex-ex32.htm"><span style="color:#0000ff;white-space:pre-wrap;text-decoration:underline solid;font-kerning:none;min-width:fit-content;">Certifications of Chief Executive Officer and Chief Financial Officer pursuant to Section 906 of the Sarbanes-Oxley Act of 2002 (18 U.S.C. &#167; 1350).</span><span style="color:#0000ff;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></a></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">101.INS*</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Inline XBRL Instance Document&#8212;the instance document does not appear in the Interactive Data File because its XBRL tags are embedded within the Inline XBRL document.</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">101.SCH*</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Inline XBRL Taxonomy Extension Schema With Embedded Linkbase Documents.</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">104.1</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:7.5pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:7.5pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cover Page Interactive Data File&#8212;The cover page interactive data file does not appear in the interactive data file because its XBRL tags are embedded within the inline XBRL document.</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;text-indent:6pt;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:6pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">*      Filed herewith.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">***  Furnished herewith.</span></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">27</span></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;"/>
 </body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>2
<FILENAME>trex-ex31_1.htm
<DESCRIPTION>EX-31.1
<TEXT>
<html>
 <head>
  <title>EX-31.1</title>
 </head>
 <body style="padding:8px;margin:auto!important;z-index:0;position:relative;">
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;min-height:0.5in;position:relative;"></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Exhibit 31.1</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </font></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">CERTIFICATION</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </font></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">I, Bryan H. Fairbanks, certify that:</font><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </font></p><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">1.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">I have reviewed this quarterly report on Form 10-Q of Trex Company, Inc.; </font></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">2.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">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; </font></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">3.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report; </font></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">4.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The registrant&#x2019;s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have: </font></div></div><div class="item-list-element-wrapper" style="margin-left:0.33958333333333335in;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.7521786492374725%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(a)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared; </font></div></div><div class="item-list-element-wrapper" style="margin-left:0.33958333333333335in;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.7521786492374725%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(b)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles; </font></div></div><div class="item-list-element-wrapper" style="margin-left:0.33958333333333335in;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.7521786492374725%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(c)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Evaluated the effectiveness of the registrant&#x2019;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and </font></div></div><div class="item-list-element-wrapper" style="margin-left:0.33958333333333335in;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.7521786492374725%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(d)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Disclosed in this report any change in the registrant&#x2019;s internal control over financial reporting that occurred during the registrant&#x2019;s most recent fiscal quarter (the registrant&#x2019;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#x2019;s internal control over financial reporting; and </font></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">5.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The registrant&#x2019;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#x2019;s auditors and the audit committee of the registrant&#x2019;s board of directors (or persons performing the equivalent functions): </font></div></div><div class="item-list-element-wrapper" style="margin-left:0.33958333333333335in;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.7521786492374725%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(a)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">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&#x2019;s ability to record, process, summarize and report financial information; and </font></div></div><div class="item-list-element-wrapper" style="margin-left:0.33958333333333335in;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.7521786492374725%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(b)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#x2019;s internal control over financial reporting. </font></div></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</font></p><p style="font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Date:  May 8, 2025</font><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </font></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:50.0%;border-collapse:separate;">
     <tr style="visibility:collapse;">
      <td style="width:100%;box-sizing:content-box;"></td>
     </tr>
     <tr style="word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</font></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">/s/ Bryan H. Fairbanks</font></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Bryan H. Fairbanks</font></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">President and Chief Executive Officer</font></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;">(Principal Executive Officer)</font></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</font></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</font></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;">
 </body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>3
<FILENAME>trex-ex31_2.htm
<DESCRIPTION>EX-31.2
<TEXT>
<html>
 <head>
  <title>EX-31.2</title>
 </head>
 <body style="padding:8px;margin:auto!important;z-index:0;position:relative;">
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;min-height:0.5in;position:relative;"></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Exhibit 31.2</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </font></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">CERTIFICATION</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </font></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">I, Brenda K. Lovcik, certify that:</font><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </font></p><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">1.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">I have reviewed this quarterly report on Form 10-Q of Trex Company, Inc.; </font></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">2.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">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; </font></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">3.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report; </font></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">4.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The registrant&#x2019;s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have: </font></div></div><div class="item-list-element-wrapper" style="margin-left:0.33958333333333335in;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.7521786492374725%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(a)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared; </font></div></div><div class="item-list-element-wrapper" style="margin-left:0.33958333333333335in;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.7521786492374725%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(b)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles; </font></div></div><div class="item-list-element-wrapper" style="margin-left:0.33958333333333335in;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.7521786492374725%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(c)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Evaluated the effectiveness of the registrant&#x2019;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and </font></div></div><div class="item-list-element-wrapper" style="margin-left:0.33958333333333335in;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.7521786492374725%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(d)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Disclosed in this report any change in the registrant&#x2019;s internal control over financial reporting that occurred during the registrant&#x2019;s most recent fiscal quarter (the registrant&#x2019;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#x2019;s internal control over financial reporting; and </font></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">5.</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The registrant&#x2019;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#x2019;s auditors and the audit committee of the registrant&#x2019;s board of directors (or persons performing the equivalent functions): </font></div></div><div class="item-list-element-wrapper" style="margin-left:0.33958333333333335in;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.7521786492374725%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(a)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">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&#x2019;s ability to record, process, summarize and report financial information; and </font></div></div><div class="item-list-element-wrapper" style="margin-left:0.33958333333333335in;display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.7521786492374725%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(b)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#x2019;s internal control over financial reporting. </font></div></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</font></p><p style="font-size:10pt;margin-top:9pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Date:  May 8, 2025</font></p>
    <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:50.0%;border-collapse:separate;">
     <tr style="visibility:collapse;">
      <td style="width:100%;box-sizing:content-box;"></td>
     </tr>
     <tr style="white-space:pre-wrap;word-break:break-word;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:1pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</font></p></td>
     </tr>
     <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">/s/ Brenda K. Lovcik</font></p></td>
     </tr>
     <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Brenda K. Lovcik</font></p></td>
     </tr>
     <tr style="height:10pt;white-space:pre-wrap;word-break:break-word;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Senior Vice President and Chief Financial Officer</font><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-style:italic;font-kerning:none;min-width:fit-content;">(Principal Financial Officer)</font></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</font></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</font></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;">
 </body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32
<SEQUENCE>4
<FILENAME>trex-ex32.htm
<DESCRIPTION>EX-32
<TEXT>
<html>
 <head>
  <title>EX-32</title>
 </head>
 <body style="padding:8px;margin:auto!important;z-index:0;position:relative;">
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;min-height:0.5in;position:relative;"></div></div>
  <div class="main-content-container" style="z-index:5;position:relative;"><div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Exhibit 32</font></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Certifications of Chief Executive Officer and Chief Financial Officer</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </font></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Pursuant to Section 906</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </font></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">of the Sarbanes-Oxley Act of 2002 (18 U.S.C. Section 1350)</font><font style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </font></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The undersigned, the President and Chief Executive Officer and the Senior Vice President and Chief Financial Officer of Trex Company, Inc. (the &#x201c;Company&#x201d;), each hereby certifies that, on the date hereof:</font><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </font></p><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(a)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">the Quarterly Report on Form 10-Q of the Company for the quarterly period ended March 31, 2025 filed on the date hereof with the U.S. Securities and Exchange Commission (the &#x201c;Report&#x201d;) fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and </font></div></div><div class="item-list-element-wrapper" style="display:flex;margin-top:6pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(b)</font><div style="width:100%;display:inline;"><font style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company. </font></div></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</font></p>
    <table style="border-spacing:0;table-layout:auto;width:100.0%;border-collapse:separate;">
     <tr style="visibility:collapse;">
      <td style="width:47.78%;box-sizing:content-box;"></td>
      <td style="width:4.44%;box-sizing:content-box;"></td>
      <td style="width:47.78%;box-sizing:content-box;"></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Date:  May 8, 2025</font></p></td>
      <td style="padding-top:0in;padding-left:0.1in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:4pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">/s/ Bryan H. Fairbanks</font></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0.1in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:4pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</font></p></td>
      <td style="padding-top:0in;padding-left:0.1in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:4pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Bryan H. Fairbanks</font></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0.1in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:4pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
      <td style="padding-top:0in;padding-left:0.1in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:4pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">President and Chief Executive Officer</font></p></td>
     </tr>
     <tr style="height:12.25pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</font></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</font></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:middle;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</font></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Date:  May 8, 2025</font></p></td>
      <td style="padding-top:0in;padding-left:0.1in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:4pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:top;padding-bottom:0in;border-bottom:0.75pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">/s/ Brenda K. Lovcik</font></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0.1in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:4pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
      <td style="padding-top:0in;padding-left:0.1in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:4pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Brenda K. Lovcik</font></p></td>
     </tr>
     <tr style="height:10pt;word-break:break-word;white-space:pre-wrap;">
      <td style="padding-top:0in;padding-left:0.1in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:4pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
      <td style="padding-top:0in;padding-left:0.1in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:4pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </font></p></td>
      <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Senior Vice President and Chief Financial Officer</font></p></td>
     </tr>
    </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><font style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</font></p></div></div>
  <div class="fixed-width-container" style="margin-left:auto;padding-left:0.5in;width:7.5in;margin-top:auto;box-sizing:content-box;margin-right:auto;padding-right:0.5in;"><div style="z-index:2;flex-direction:column;display:flex;padding-bottom:0.5in;min-height:0.5in;justify-content:flex-end;position:relative;box-sizing:border-box;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><font style="white-space:pre-wrap;font-size:8pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</font></p></div></div>
  <hr style="margin-inline-start:auto;margin-inline-end:auto;width:8.5in;page-break-after:always;">
 </body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>5
<FILENAME>img245582526_0.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 img245582526_0.jpg
M_]C_X  02D9)1@ ! @$ 8 !@  #_VP!#  $! 0$! 0$! 0$! 0$! 0$! 0$!
M 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0'_
MVP!# 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$!
M 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0'_P  1" "( -X# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
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
M0?5_!?C']H[X3PQP?!O]K#]H'X>6D,RW$.E1>/=3\1Z&LJ?<#:5XF?6+4VZ
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
MS%2+K,?) ;Y1W(]#[UGS33TDT]M)6_%.PFD]TGZJY_:G_P $>+72-,_X)[_
MZQTBQT_2[&VG^(4<=CIEE!8VL#'XC>*97"V]K%%$KMY@=V53DORQ(P.[_P""
MI[V;_P#!//\ :PCO8+2[L[CX5WUG=6M]"D]I<07VJZ79R07$,P,4L<RS&,QN
M"K[@I!SBOGK_ ()<^,M.T']@?]GRREF,4TVG>,M1D7*+C[=XZ\02ID;B6&P
MACC.3A0*VO\ @I?XXT[6?^"?_P"U9817/FRR?#BTD2/*C<(?%WAN1\D%CC8&
MSP<YQCFM:=!NI3JN;O[2$]5_?3WUZ:OM84DN5JVG*U9=K;'XJ?\ !*O]@#]F
MG]LFT^-H^+6@:O!=?#K_ (5Q'H=QX4;0M)1X?$\/BM[[^T7NM#U.:[N%.@6L
M=MQ''%"TOWG"E?V LO\ @AO^POHOVF]LH?B?9W"6\N+NS\5:59R0HD3DN4T[
MPK;/<K'_ *P0R>8CE H0Y(/PI_P07\2V>BZ+^UW?74I1;C4_@+IL7*CYX-.^
M)MVY_P"^;A1[@^PK^@&'XBZ=/-%#;SR2SS2)%#%$=\DDLC!(TC5?F9V<A550
M2Q( YZTXU)RJ/VLXKGDE&[<;)KHVO/ITN]]5&*48Z*ZBM;>2/PJ_8B_X(^P?
M$?P/I7Q8_:OU#Q?X8A\4175_X6^#&B32>&?$6DZ$=2N8M&U'XC:U);27T.L:
MSI$%KJA\,Z1%9#2;?48;?4-1DU&*YM;?U/\ X*1_L-?LE_LY?L9^,_B!\*OA
M7IWAGQUHFO\ PWTO2?%,WB?Q3J.LSC6?&^AZ1JD,O]MZUJ%M?RWNDW=^)8%M
M48 -<Q&+[/7"_M7?\%XO"OPL^)_C3X/_ +,_P=B_:'UKX=ZS?^$O'GQ8\4>/
M)/ GP?TKQ[HMR;/Q)X*\'R:9H/B3Q+\3+_PG>I+I/BC7-,@T;PG8:Y!=:/8:
MYJU]8W\-K^6?[3W_  5D_:>_:[^%FH?!+QS\&O@-X>\/^(_$7A6]TS_A [_X
MA:AXQ?Q-IFM6\GAS3K"]U^]CT>1M5U66UTV9Y=*#BWN9EA42R(\42@U-/GLK
MW4;J*4=+*W,Y-6V;BK[H:DFDDVVG9M)VTM?6UO7\/+SW]FS]GOXN?M9?$J/X
M7_!O1X+J_M+:+4_%WB[6GN;7P5\/M"DE6)-5\3ZG;6\\ANKMRR:+X=T^*?6]
M;ECF:VMXK"TO]0L_Z$/A1_P1!^ V@Z9#+\8OB5\0_B7XBDC@:ZC\.WMMX!\+
M6TVS_2+>RL;&#4=:N+?S2/*GO-;$Y526C3>43ZL_93^%/@#]D+X(^$/@SX>%
MHNO:?IMIJ7Q.\0PB-KWQ=\2KZT@D\6:M?77RO-!:ZCYFDZ1;Y,%CI5A:VMOE
M$W-^>?\ P52_;B_:G\ :EX*^!/[)&B^._#MSXE\*S^-?B3\=O"GPWU'QSJND
M6%UJ%SI&B^ /A_<3:/J_AK2-?N1:W.K^)=?O+/5-1TVR?3+/2;:SNYYM0MDZ
M<W%/GY;V25N]M9/?;HDW\[I4?;K_ /!'_P#87>W$'_"OO%J.!C[4GQ)\<"Y;
MY0HW.=7,9QM!'[K&<G'S-GP'XH_\$/\ X"Z[ITTGPB^)WQ'^&VO(D[VT?B"Z
MLO'WAJ>81_Z-;W=A?6^E:Q!;"4$S2VNMF<JX9%8ILD_G+7XK?\%)XYUO;?\
M:,_X*))J2W1O!<2Z_P#%*YM#.6SA]&NM#FT%[0=!8/I9L O'V? &/W$_X)4?
MMV_M@_$7Q1X^^ /[9'ACQ7XC7PUX)MO'WPI_:.UGX;7_ ,/+[7;.QU2TT'Q#
M\+OB?:6^C:5X4O\ Q?917>G>(O"/B[1K?29?%.F'6K#5]'AU;28]1UF8TY-J
MU6^VR=U>VMI))I];-OKRM7%=]4UYZ->F_P!W^;2/R)^//P,^)W[!WQ]^'OA_
M]I_X$W?QE^"?B2^UFRU'5/AQXRO?"<_CCP^UDT47B;X3^)V>*TM/'?@S4&MM
M0UOX5^.WT.YUG297DL]633WL]7N?ICPCI_[(WQ&\,:)XZ^&G_!+3_@JY\2O
M/BBUEO\ POXX^'^J?#CQ9X5\0Z?#=W%@]WIFLZ/\7;JTE6*\M+FTN8GE6XMK
MNWN+>>-9(GQ_0[^T+X$^&7[5/P@\7? SQ_)#_9GB^TVZ#K;"+[=X-\:6JN_A
M3QCH]RZM)8W^BZHT3RRP%6N--FO["8R6MU/%)_%)\)O'_CK]EOXA0_"V_P#B
M%^U7\-OA!IOQ>\;:;\?/AY^RI\<M=^$OB#1_$\E]>Z!XK\?_  Z\.N\_@S4O
M$%OXFTV'6M9T'4;/3/\ A+=-:[>.]M]9G5YNA1^S-1YE9QE[\5-;M>[-)3Z)
M-V>A,^9:INW5*U]6EUB]._;?5;??WQ:^ %[XRLK"[_9S_P"">G_!3#X0:KH[
M7$GBBP^.?P[T#7_"VN:0\?F0W/AZ[\+>*/$_BB'Q#I\L<@EL?LDMEJ%I.J01
M?;(8Q+\$IJ*N#_K%*L\<D<L<D,T4L;M'+#/!*L<T$\,BM%-!,D<L,J/'*B2*
MRC],_#OQ%^#?C/0[+QA\/_C3_P '.7CKPIJ%W?6^E^+O!'B#5?$WAG4+S2;M
MK34;>TU/39Y[!Y[&[1K6]L7\N:WES%<VZ$E:SM"_99^%G[4_QTTSPM\+="_X
M*0_"2Z6UE\?_ !Q^+7[;_P  +#2/!>O:+<ZBL&H)X6^(]CJ6D?:/C=J-W*HT
MWPA?Z'JEEK:-J&N:A?:7%IDAU"'"5U9I*Z3TG:.U[\W-)O[WVM>PHRTUNWTV
MN_2R2MZOU[GF'[%7['?Q"_;)^(W]@Z')<^&?AIX6N+.Y^)OQ(EMO-L]#L9F6
M:/PYH7F[8-3\::W;AQ8V6YK?2;0OK&K;8%L[74/WX/\ P1B_8R(Q_:/Q@Q@
MD_$.+<2  22N@*,L1D[0JY)  '%?4/PIM/A+\#/A]X?^%OPIT:#PSX*\,P>7
M9V:O'+J&IWTH!U#Q!X@U#"RZMX@U><&ZU+4+@[GD810K%;10PI\B?M\_\%*?
M#/[(_@BVT'P>=/\ %7[0_CO399O /A"X87&G^#](DWP-\3/'\<3AK70[20,O
MAO0G:/4/%VJQI'"D.C0WVI0NI3TOS2C9625KR?>3U2;:V5XQ5TG+5RM7Z[OH
MMEY+OZ]?2R7YO_\ !0K]G?\ 8"_9!TVS^'W@Z\^*'BO]H?Q5;V=SI'AR?XB+
M?Z/\/?#MY=K _CWXA01Z3&(K%(1<MH'APRPZGXGN8G,"0:9:WFH0?F'\6O"_
MA#P3<>&X_"?BL>)8]7TV:YU!'N-/N)[2: P)YW_$NDD2.TNI))8H!.$-R8)+
MBT\VS*RGY\\2>._$/C/Q)X@\:^-/$&J^*_&?BS5+G7/%/BC69VN-5US5KL@S
M7=U,V<1HJI;V=I"([33[*&WLK.&&U@BB3G_[5B7<$4*&.XE0JY.,9. ,G'&3
M6$>9*UV_FO+\-M//UNRM\,/VH-7_ &$/VO\ X5_&C2-1N-+\*>)-7T[0/%P@
MD*P/H6HZDEG)+<12*8)SH.I7<=T$N0\']E7U\LR21;EK^OS4?$J>"OVF?AM^
MUCX!,-IX?^+/A_2_"?QRT724\K1?%.E:A':ZAX2^(EM%',L7VZ&QNK=[AKAY
M3'(EU=RNTD\BU_"W^V1X4;XA?"-[>U5_[0T;5X;JW*G#FTO(I+2]12!G[ACF
MX/#Q(PP0#7]0W_!,OXZ:AXL_8(_93M?C#<+)XN7X71:1K5S=.K/?_P!C^(-;
MTS1]2RQP4OM&M]/F50 (T(@ "QC.\&I.\[/W>5MM:KW;IO\ O+1[VMW2%96M
MM?56Z;;?/MIY']6L,T5Q#%<02)-!/&DT,L;!XY8I5#QR1NI*LCHP96!(92"#
M@U)7C7P!\30>*OA7X9O[>Z-VEK%<:29FD\UB--N'MXE:3)!*6XA50,!$"H
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
M<JAE)7!4E#KK#^,#CU)]>X./S_E677].@SU/6KZWOM%UO[7C[)9Z7>WL^XY
M2W@=QG<2OWL 9YS@#DBO?/'?Q>^(?@_Q/^SK^R+\&VO)_$^A?#;]GSPCJD&E
M1RW-ROB3Q3X4T;QIXBLXH807:ZL[+7I)KLE2;:-2TGW&4?*^A75M>2Z1INHI
M>7%IKNI6MUJMGIUN][J-UX6TNXCN+^TLK%5>2[O==F0:+IMND;-<7=U BHP9
MJ_IC_P""97_!/GQ3\/=8U_\ :6^.FD6DW[6G[0.KZSK>G:!Y<=W#\$/#OC L
MEIHMLVUH_P#A)=/T";3M,N[J/:NEV>G06BOYS.UOOR2E"G!:.4O:3>UH723;
M6MVE=>5V^Y-]6^VGSW?WW2]4?MW_ ,$M[/Q)#^Q?\--1\4W$USJFOZEXTU=7
MN-WGK8CQ9JVE6 E+9R9+;2TN$(.#',AZY%?H57$_#;P)HGPP\ ^$?A]X=MX[
M71O".@Z?HEG'&" _V2!5N+I\\M->W1GO+AS@O//(^!NP.VKCJ2YIRDMG)M7W
MM?2_R&E9)>05E:WHUAXATF_T;4X1-9:A;R6\RE49DWJ=DT6]759H'VRPN5;9
M*BM@XP=6BI3:::=FFFFMTUJG\AGY(_M'?LXZ+XJT.[^%_P 2+!+G1[J]37/
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
MVVFPP1 *L$42#;7[.T5HL177_+V;TM[TG)?=*Z%R1_E2MV5NW:W9'\\6L_\
M!L]_P3\OE<:1XD_:!T,LI567QWX>U0Q;@1NC^W^"W!9,@Q^=YRY \Q95RIX&
M?_@UZ_8R>1C;_'']I.&+=E4DU'X63NJYX#2?\*TA#-ZL(U&<X4< ?TMT4?6*
MMK7@UMK2I/[[P=_5ZARKS^4I+\GH?S<Z5_P;$_L1V4I.H_%3]H+6H#L^2XUG
MP)93*0,,%FT[P/;1A6[!K9V4 ?.S98^N^'/^#<+_ ()L:'/;SZEHOQG\5B$A
MI;77/BI=VEI<D#!$B^&=(\/W2(3\VV"[B.1C<5R#^]-%/ZQ5Z2BK?RTZ<?\
MTF"#DCYOUE)_FS\P?!7_  1D_P""9O@,V[Z1^RGX+U.>UDBGBN?%VM^-_&LP
MGB/$O_%5>)]6B&["[H4B6V)0,( [2,_W!X%_9^^!7PQ2)/AU\'/AEX($&SR6
M\+^!_#>BRQE%50Z36&G02K(0H+R!]\CY>1F<ECZ]14NO6=[U:EGNN>26FVB=
MNBZ!R1_EC]RO]^Y$D,,>TQPQ(478NR-%VIDG8NT#"Y).T8&2>.:EHHK-MO=M
M^NHTDMDEZ:!1112&%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
F444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110!__]D!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>6
<FILENAME>trex-20250331.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA WITH EMBEDDED LINKBASES DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII"?>
<!-- DFIN New ActiveDisclosure (SM) XBRL Schema Document - http://www.dfinsolutions.com/ -->
<!-- Creation Date :2025-05-08T10:09:56.7268+00:00 -->
<!-- Copyright (c) 2025 Donnelley Financial Solutions, Inc. All Rights Reserved. -->
<xsd:schema targetNamespace="http://www.trex.com/20250331" attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2024-01-31" xmlns:ecd-sub="http://xbrl.sec.gov/ecd-sub/2024" xmlns:ecd="http://xbrl.sec.gov/ecd/2024" xmlns:trex="http://www.trex.com/20250331" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:dei="http://xbrl.sec.gov/dei/2024" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:enum2="http://xbrl.org/2020/extensible-enumerations-2.0" xmlns:srt="http://fasb.org/srt/2024" xmlns:us-gaap="http://fasb.org/us-gaap/2024" xmlns:xlink="http://www.w3.org/1999/xlink">
  <xsd:import schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" namespace="http://www.xbrl.org/2003/instance"/>
  <xsd:import schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" namespace="http://www.xbrl.org/2003/linkbase"/>
  <xsd:import schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd" namespace="http://xbrl.org/2005/xbrldt"/>
  <xsd:import schemaLocation="https://xbrl.sec.gov/ecd/2024/ecd-sub-2024.xsd" namespace="http://xbrl.sec.gov/ecd-sub/2024"/>
  <xsd:import schemaLocation="https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd" namespace="http://xbrl.org/2020/extensible-enumerations-2.0"/>
  <xsd:import schemaLocation="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd" namespace="http://fasb.org/srt/2024"/>
  <xsd:import schemaLocation="https://xbrl.sec.gov/dei/2024/dei-2024.xsd" namespace="http://xbrl.sec.gov/dei/2024"/>
  <xsd:import schemaLocation="https://www.xbrl.org/dtr/type/2024-01-31/types.xsd" namespace="http://www.xbrl.org/dtr/type/2024-01-31"/>
  <xsd:import schemaLocation="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd" namespace="http://fasb.org/us-gaap/2024"/>
  <xsd:import schemaLocation="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd" namespace="http://xbrl.sec.gov/ecd/2024"/>
  <xsd:import schemaLocation="https://www.xbrl.org/2023/calculation-1.1.xsd" namespace="https://xbrl.org/2023/calculation-1.1"/>
  <xsd:annotation>
    <xsd:appinfo>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/CoverPage" id="CoverPage">
        <link:definition>100000 - 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 roleURI="http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome" id="CondensedConsolidatedStatementsOfComprehensiveIncome">
        <link:definition>100010 - Statement - Condensed Consolidated Statements Of Comprehensive Income</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/DisclosureLeasesMaturitiesOfOperatingLeaseLiabilitiesDetail2" id="DisclosureLeasesMaturitiesOfOperatingLeaseLiabilitiesDetail2">
        <link:definition>100020 - Disclosure - Leases - Maturities of Operating Lease Liabilities (Detail) 2</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets" id="CondensedConsolidatedBalanceSheets">
        <link:definition>100030 - Statement - Condensed Consolidated Balance Sheets</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheetsParenthetical" id="CondensedConsolidatedBalanceSheetsParenthetical">
        <link:definition>100040 - Statement - Condensed Consolidated Balance Sheets (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity" id="CondensedConsolidatedStatementsOfChangesInStockholdersEquity">
        <link:definition>100050 - Statement - Condensed Consolidated Statements of Changes in Stockholders' Equity</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows" id="CondensedConsolidatedStatementsOfCashFlows">
        <link:definition>100060 - Statement - Condensed Consolidated Statements of Cash Flows</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/BusinessAndOrganization" id="BusinessAndOrganization">
        <link:definition>995457 - Disclosure - Business and Organization</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/BasisOfPresentation" id="BasisOfPresentation">
        <link:definition>995467 - Disclosure - Basis of Presentation</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/RecentlyAdoptedAccountingStandards" id="RecentlyAdoptedAccountingStandards">
        <link:definition>995477 - Disclosure - Recently Adopted Accounting Standards</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/NewAccountingStandardsNotYetAdopted" id="NewAccountingStandardsNotYetAdopted">
        <link:definition>995487 - Disclosure - New Accounting Standards Not Yet Adopted</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/Inventories" id="Inventories">
        <link:definition>995497 - Disclosure - Inventories</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssets" id="PrepaidExpensesAndOtherAssets">
        <link:definition>995507 - Disclosure - Prepaid Expenses and Other Assets</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNet" id="GoodwillAndOtherIntangibleAssetsNet">
        <link:definition>995517 - Disclosure - Goodwill and Other Intangible Assets, Net</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilities" id="AccruedExpensesAndOtherLiabilities">
        <link:definition>995527 - Disclosure - Accrued Expenses and Other Liabilities</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/Debt" id="Debt">
        <link:definition>995537 - Disclosure - Debt</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/Leases" id="Leases">
        <link:definition>995547 - Disclosure - Leases</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/FinancialInstruments" id="FinancialInstruments">
        <link:definition>995557 - Disclosure - Financial Instruments</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/StockholdersEquity" id="StockholdersEquity">
        <link:definition>995567 - Disclosure - Stockholders' Equity</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/RevenueFromContractsWithCustomers" id="RevenueFromContractsWithCustomers">
        <link:definition>995577 - Disclosure - Revenue From Contracts With Customers</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensation" id="StockBasedCompensation">
        <link:definition>995587 - Disclosure - Stock-Based Compensation</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/IncomeTaxes" id="IncomeTaxes">
        <link:definition>995597 - Disclosure - Income Taxes</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/DisclosureSegmentInformation" id="DisclosureSegmentInformation">
        <link:definition>995607 - Disclosure - Segment Information</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/Seasonality" id="Seasonality">
        <link:definition>995617 - Disclosure - Seasonality</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingencies" id="CommitmentsAndContingencies">
        <link:definition>995627 - Disclosure - Commitments and Contingencies</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/InventoriesTables" id="InventoriesTables">
        <link:definition>995637 - Disclosure - Inventories (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsTables" id="PrepaidExpensesAndOtherAssetsTables">
        <link:definition>995647 - Disclosure - Prepaid Expenses and Other Assets (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesTables" id="AccruedExpensesAndOtherLiabilitiesTables">
        <link:definition>995657 - Disclosure - Accrued Expenses and Other Liabilities (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/LeasesTables" id="LeasesTables">
        <link:definition>995667 - Disclosure - Leases (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/StockholdersEquityTables" id="StockholdersEquityTables">
        <link:definition>995677 - Disclosure - Stockholders' Equity (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationTables" id="StockBasedCompensationTables">
        <link:definition>995687 - Disclosure - Stock-Based Compensation (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesTables" id="CommitmentsAndContingenciesTables">
        <link:definition>995697 - Disclosure - Commitments and Contingencies (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/BusinessAndOrganizationAdditionalInformationDetail" id="BusinessAndOrganizationAdditionalInformationDetail">
        <link:definition>995707 - Disclosure - Business and Organization - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/DisclosureRecentlyAdoptedAccountingStandardsAdditionalInformationDetails" id="DisclosureRecentlyAdoptedAccountingStandardsAdditionalInformationDetails">
        <link:definition>995717 - Disclosure - Recently Adopted Accounting Standards - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/InventoriesSummaryOfInventoriesDetail" id="InventoriesSummaryOfInventoriesDetail">
        <link:definition>995727 - Disclosure - Inventories - Summary of Inventories (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsSummaryOfPrepaidExpensesAndOtherAssetsDetail" id="PrepaidExpensesAndOtherAssetsSummaryOfPrepaidExpensesAndOtherAssetsDetail">
        <link:definition>995737 - Disclosure - Prepaid Expenses and Other Assets - Summary of Prepaid Expenses and Other Assets (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail" id="GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail">
        <link:definition>995747 - Disclosure - Goodwill and Other Intangible Assets, Net - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail" id="AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail">
        <link:definition>995757 - Disclosure - Accrued Expenses and Other Liabilities - Summary of Accrued Expenses and Other Liabilities (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail" id="DebtAdditionalInformationDetail">
        <link:definition>995767 - Disclosure - Debt - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/LeasesAdditionalInformationDetail" id="LeasesAdditionalInformationDetail">
        <link:definition>995777 - Disclosure - Leases - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail" id="LeasesSupplementalCashFlowInformationToOperatingLeasesDetail">
        <link:definition>995787 - Disclosure - Leases - Supplemental Cash flow Information to operating leases (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail" id="LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail">
        <link:definition>995797 - Disclosure - Leases - Maturities of Operating Lease Liabilities (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAdditionalInformationDetail" id="StockholdersEquityAdditionalInformationDetail">
        <link:definition>995807 - Disclosure - Stockholders' Equity - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail" id="StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail">
        <link:definition>995817 - Disclosure - Stockholders' Equity - Computation of Basic and Diluted Earnings Per Share (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetail" id="StockholdersEquityAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetail">
        <link:definition>995827 - Disclosure - Stockholders' Equity - Antidilutive Securities Excluded from Computation of Earnings Per Share (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/RevenueFromContractsWithCustomersAdditionalInformationDetail" id="RevenueFromContractsWithCustomersAdditionalInformationDetail">
        <link:definition>995837 - Disclosure - Revenue From Contracts With Customers - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationAdditionalInformationDetail" id="StockBasedCompensationAdditionalInformationDetail">
        <link:definition>995847 - Disclosure - Stock-Based Compensation - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationGrantsDetail" id="StockBasedCompensationSummaryOfStockBasedCompensationGrantsDetail">
        <link:definition>995857 - Disclosure - Stock-Based Compensation - Summary of Stock-Based Compensation Grants (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/DisclosureStockbasedCompensationSummaryOfStockbasedCompensationExpensesParentheticalDetails" id="DisclosureStockbasedCompensationSummaryOfStockbasedCompensationExpensesParentheticalDetails">
        <link:definition>995867 - Disclosure - Stock-Based Compensation - Summary of Stock-Based Compensation Expenses (Parenthetical) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfAssumptionsUsedToEstimateFairValueOfEachSarDetail" id="StockBasedCompensationSummaryOfAssumptionsUsedToEstimateFairValueOfEachSarDetail">
        <link:definition>995877 - Disclosure - Stock-Based Compensation - Summary of Assumptions Used to Estimate Fair Value of Each SAR (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationExpensesDetail" id="StockBasedCompensationSummaryOfStockBasedCompensationExpensesDetail">
        <link:definition>995887 - Disclosure - Stock-Based Compensation - Summary of Stock-Based Compensation Expenses (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/IncomeTaxesAdditionalInformationDetail" id="IncomeTaxesAdditionalInformationDetail">
        <link:definition>995897 - Disclosure - Income Taxes - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/DisclosureSegmentInformationAdditionalInformationDetails" id="DisclosureSegmentInformationAdditionalInformationDetails">
        <link:definition>995907 - Disclosure - Segment Information - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail" id="CommitmentsAndContingenciesAdditionalInformationDetail">
        <link:definition>995917 - Disclosure - Commitments and Contingencies - Additional Information (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType roleURI="http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail" id="CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail">
        <link:definition>995927 - Disclosure - Commitments and Contingencies - Summary of Reconciliation of Company's Residential Product Warranty Reserve (Detail)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:linkbase id="lnk">
        <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" xlink:type="simple"/>
        <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" xlink:type="simple"/>
        <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" xlink:type="simple"/>
        <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" xlink:type="simple"/>
        <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" xlink:type="simple"/>
        <link:arcroleRef arcroleURI="http://www.esma.europa.eu/xbrl/esef/arcrole/wider-narrower" xlink:href="http://www.xbrl.org/lrr/arcrole/esma-arcrole-2018-11-21.xsd#wider-narrower" xlink:type="simple"/>
        <link:arcroleRef arcroleURI="https://xbrl.org/2023/arcrole/summation-item" xlink:href="https://www.xbrl.org/2023/calculation-1.1.xsd#summation-item" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/CoverPage" xlink:href="trex-20250331.xsd#CoverPage" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome" xlink:href="trex-20250331.xsd#CondensedConsolidatedStatementsOfComprehensiveIncome" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets" xlink:href="trex-20250331.xsd#CondensedConsolidatedBalanceSheets" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheetsParenthetical" xlink:href="trex-20250331.xsd#CondensedConsolidatedBalanceSheetsParenthetical" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity" xlink:href="trex-20250331.xsd#CondensedConsolidatedStatementsOfChangesInStockholdersEquity" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows" xlink:href="trex-20250331.xsd#CondensedConsolidatedStatementsOfCashFlows" xlink:type="simple"/>
        <link:roleRef roleURI="http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" xlink:href="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd#InsiderTradingArrangements" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/BusinessAndOrganization" xlink:href="trex-20250331.xsd#BusinessAndOrganization" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/BasisOfPresentation" xlink:href="trex-20250331.xsd#BasisOfPresentation" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/RecentlyAdoptedAccountingStandards" xlink:href="trex-20250331.xsd#RecentlyAdoptedAccountingStandards" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/NewAccountingStandardsNotYetAdopted" xlink:href="trex-20250331.xsd#NewAccountingStandardsNotYetAdopted" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/Inventories" xlink:href="trex-20250331.xsd#Inventories" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssets" xlink:href="trex-20250331.xsd#PrepaidExpensesAndOtherAssets" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNet" xlink:href="trex-20250331.xsd#GoodwillAndOtherIntangibleAssetsNet" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilities" xlink:href="trex-20250331.xsd#AccruedExpensesAndOtherLiabilities" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/Debt" xlink:href="trex-20250331.xsd#Debt" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/Leases" xlink:href="trex-20250331.xsd#Leases" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/FinancialInstruments" xlink:href="trex-20250331.xsd#FinancialInstruments" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/StockholdersEquity" xlink:href="trex-20250331.xsd#StockholdersEquity" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/RevenueFromContractsWithCustomers" xlink:href="trex-20250331.xsd#RevenueFromContractsWithCustomers" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensation" xlink:href="trex-20250331.xsd#StockBasedCompensation" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/IncomeTaxes" xlink:href="trex-20250331.xsd#IncomeTaxes" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/DisclosureSegmentInformation" xlink:href="trex-20250331.xsd#DisclosureSegmentInformation" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/Seasonality" xlink:href="trex-20250331.xsd#Seasonality" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingencies" xlink:href="trex-20250331.xsd#CommitmentsAndContingencies" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/InventoriesTables" xlink:href="trex-20250331.xsd#InventoriesTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsTables" xlink:href="trex-20250331.xsd#PrepaidExpensesAndOtherAssetsTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesTables" xlink:href="trex-20250331.xsd#AccruedExpensesAndOtherLiabilitiesTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/LeasesTables" xlink:href="trex-20250331.xsd#LeasesTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/StockholdersEquityTables" xlink:href="trex-20250331.xsd#StockholdersEquityTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationTables" xlink:href="trex-20250331.xsd#StockBasedCompensationTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesTables" xlink:href="trex-20250331.xsd#CommitmentsAndContingenciesTables" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/BusinessAndOrganizationAdditionalInformationDetail" xlink:href="trex-20250331.xsd#BusinessAndOrganizationAdditionalInformationDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/DisclosureRecentlyAdoptedAccountingStandardsAdditionalInformationDetails" xlink:href="trex-20250331.xsd#DisclosureRecentlyAdoptedAccountingStandardsAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/InventoriesSummaryOfInventoriesDetail" xlink:href="trex-20250331.xsd#InventoriesSummaryOfInventoriesDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsSummaryOfPrepaidExpensesAndOtherAssetsDetail" xlink:href="trex-20250331.xsd#PrepaidExpensesAndOtherAssetsSummaryOfPrepaidExpensesAndOtherAssetsDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail" xlink:href="trex-20250331.xsd#GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail" xlink:href="trex-20250331.xsd#AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail" xlink:href="trex-20250331.xsd#DebtAdditionalInformationDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/LeasesAdditionalInformationDetail" xlink:href="trex-20250331.xsd#LeasesAdditionalInformationDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail" xlink:href="trex-20250331.xsd#LeasesSupplementalCashFlowInformationToOperatingLeasesDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail" xlink:href="trex-20250331.xsd#LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAdditionalInformationDetail" xlink:href="trex-20250331.xsd#StockholdersEquityAdditionalInformationDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail" xlink:href="trex-20250331.xsd#StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetail" xlink:href="trex-20250331.xsd#StockholdersEquityAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/RevenueFromContractsWithCustomersAdditionalInformationDetail" xlink:href="trex-20250331.xsd#RevenueFromContractsWithCustomersAdditionalInformationDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationAdditionalInformationDetail" xlink:href="trex-20250331.xsd#StockBasedCompensationAdditionalInformationDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationGrantsDetail" xlink:href="trex-20250331.xsd#StockBasedCompensationSummaryOfStockBasedCompensationGrantsDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/DisclosureStockbasedCompensationSummaryOfStockbasedCompensationExpensesParentheticalDetails" xlink:href="trex-20250331.xsd#DisclosureStockbasedCompensationSummaryOfStockbasedCompensationExpensesParentheticalDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfAssumptionsUsedToEstimateFairValueOfEachSarDetail" xlink:href="trex-20250331.xsd#StockBasedCompensationSummaryOfAssumptionsUsedToEstimateFairValueOfEachSarDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationExpensesDetail" xlink:href="trex-20250331.xsd#StockBasedCompensationSummaryOfStockBasedCompensationExpensesDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/IncomeTaxesAdditionalInformationDetail" xlink:href="trex-20250331.xsd#IncomeTaxesAdditionalInformationDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/DisclosureSegmentInformationAdditionalInformationDetails" xlink:href="trex-20250331.xsd#DisclosureSegmentInformationAdditionalInformationDetails" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail" xlink:href="trex-20250331.xsd#CommitmentsAndContingenciesAdditionalInformationDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail" xlink:href="trex-20250331.xsd#CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail" xlink:type="simple"/>
        <link:roleRef roleURI="http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-roles-2024.xsd#eedm" xlink:type="simple"/>
        <link:roleRef roleURI="http://fasb.org/srt/role/srt-eedm/ExtensibleEnumerationLists" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-roles-2024.xsd#eedm1" xlink:type="simple"/>
        <link:roleRef roleURI="http://www.trex.com/20250331/taxonomy/role/DisclosureLeasesMaturitiesOfOperatingLeaseLiabilitiesDetail2" xlink:href="trex-20250331.xsd#DisclosureLeasesMaturitiesOfOperatingLeaseLiabilitiesDetail2" xlink:type="simple"/>
        <link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:title="labelLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PerformanceBasedRestrictedStockAdjustmentMember" xlink:label="trex_PerformanceBasedRestrictedStockAdjustmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentAxis" xlink:label="us-gaap_DebtInstrumentAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PerformanceBasedRestrictedStockAndrestrictedStockunitsMember" xlink:label="trex_PerformanceBasedRestrictedStockAndrestrictedStockunitsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsAndLiabilitiesLesseeAbstract" xlink:label="us-gaap_AssetsAndLiabilitiesLesseeAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestPaidNet" xlink:label="us-gaap_InterestPaidNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="us-gaap_IncomeTaxAuthorityNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="us-gaap_OtherNoncashIncomeExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntangibleAssetsNetIncludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetIncludingGoodwill"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OpenTaxYear" xlink:label="us-gaap_OpenTaxYear"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_TwoThousandFourteenStockIncentivePlanMember" xlink:label="trex_TwoThousandFourteenStockIncentivePlanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="us-gaap_LineOfCreditFacilityAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BaseRateMember" xlink:label="us-gaap_BaseRateMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PrepaidExpenseAndOtherAssetsCurrentTableTextBlock" xlink:label="trex_PrepaidExpenseAndOtherAssetsCurrentTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfGoodwillTable" xlink:label="us-gaap_ScheduleOfGoodwillTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="us-gaap_ClassOfTreasuryStockTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember" xlink:label="trex_ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_NewAccountingStandardsNotYetAdoptedAbstract" xlink:label="trex_NewAccountingStandardsNotYetAdoptedAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SurfaceFlakingWarrantyReserveMember" xlink:label="trex_SurfaceFlakingWarrantyReserveMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityClassOfTreasuryStockLineItems" xlink:label="us-gaap_EquityClassOfTreasuryStockLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingStandardsUpdateExtensibleList" xlink:label="us-gaap_AccountingStandardsUpdateExtensibleList"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_StockAppreciationRightsMember" xlink:label="trex_StockAppreciationRightsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityExpirationDate1" xlink:label="us-gaap_LineOfCreditFacilityExpirationDate1"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SensitivityChangeInSurfaceFlakingWarrantyReserve" xlink:label="trex_SensitivityChangeInSurfaceFlakingWarrantyReserve"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:label="trex_ScheduleOfCommitmentsAndContingenciesTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryRawMaterials" xlink:label="us-gaap_InventoryRawMaterials"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonShares" xlink:label="us-gaap_TreasuryStockCommonShares"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxContingencyLineItems" xlink:label="us-gaap_IncomeTaxContingencyLineItems"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_RevolvingALoansMember" xlink:label="trex_RevolvingALoansMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxContingencyTable" xlink:label="us-gaap_IncomeTaxContingencyTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrualPayments" xlink:label="us-gaap_StandardProductWarrantyAccrualPayments"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems" xlink:label="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingAbstract" xlink:label="us-gaap_SegmentReportingAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SignatureRailingMember" xlink:label="trex_SignatureRailingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryGross" xlink:label="us-gaap_InventoryGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GuaranteeObligationsByNatureAxis" xlink:label="us-gaap_GuaranteeObligationsByNatureAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_FifthAmendmentAndRestatedAgreementMember" xlink:label="trex_FifthAmendmentAndRestatedAgreementMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember" xlink:label="trex_EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="us-gaap_StandardProductWarrantyAccrual"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_TwoThousandEighteenStockRepurchaseProgramMember" xlink:label="trex_TwoThousandEighteenStockRepurchaseProgramMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_TranscendDeckingMember" xlink:label="trex_TranscendDeckingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TextBlockAbstract" xlink:label="us-gaap_TextBlockAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LessorOperatingLeaseTermOfContract" xlink:label="us-gaap_LessorOperatingLeaseTermOfContract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="us-gaap_DebtInstrumentNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ExcessTaxBenefitsFromStockBasedAwards" xlink:label="trex_ExcessTaxBenefitsFromStockBasedAwards"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:label="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember" xlink:label="us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SupplementalFinancialInformationOfOperatingLeasesTableTextBlock" xlink:label="trex_SupplementalFinancialInformationOfOperatingLeasesTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities" xlink:label="trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonMember" xlink:label="us-gaap_TreasuryStockCommonMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ScheduleOfCommitmentsAndContingenciesLineItems" xlink:label="trex_ScheduleOfCommitmentsAndContingenciesLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:label="us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromLinesOfCredit" xlink:label="us-gaap_ProceedsFromLinesOfCredit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablePortfolioSegmentDomain" xlink:label="us-gaap_FinancingReceivablePortfolioSegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeasePayments" xlink:label="us-gaap_OperatingLeasePayments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="us-gaap_PayablesAndAccrualsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ProductWarrantyMember" xlink:label="trex_ProductWarrantyMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestIncomeExpenseNet" xlink:label="us-gaap_InterestIncomeExpenseNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContingentConsiderationByTypeAxis" xlink:label="us-gaap_ContingentConsiderationByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfLinesOfCredit" xlink:label="us-gaap_RepaymentsOfLinesOfCredit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillLineItems" xlink:label="us-gaap_GoodwillLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseCost" xlink:label="us-gaap_OperatingLeaseCost"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_LineOfCreditFacilityAdditionalBorrowingCapacity" xlink:label="trex_LineOfCreditFacilityAdditionalBorrowingCapacity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock" xlink:label="trex_DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityAbstract" xlink:label="us-gaap_EquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock" xlink:label="us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLossAbstract" xlink:label="us-gaap_NetIncomeLossAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration" xlink:label="us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InternetDomainNamesMember" xlink:label="us-gaap_InternetDomainNamesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_GrossAssetAndLiability" xlink:label="trex_GrossAssetAndLiability"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="us-gaap_IncomeTaxesPaidNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentType" xlink:label="dei_DocumentType"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:label="us-gaap_ValuationAllowancesAndReservesTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingChangesAndErrorCorrectionsAbstract" xlink:label="us-gaap_AccountingChangesAndErrorCorrectionsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_CreditFacilityOneAxis" xlink:label="trex_CreditFacilityOneAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" xlink:label="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="us-gaap_LineOfCreditFacilityLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsAbstract" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_NonRule10B51ArrModifiedFlag" xlink:label="trex_NonRule10B51ArrModifiedFlag"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityNoteAbstract" xlink:label="us-gaap_StockholdersEquityNoteAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SelectDeckingAndUniversalFasciaMember" xlink:label="trex_SelectDeckingAndUniversalFasciaMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ResidentialAndCommercialUseMember" xlink:label="trex_ResidentialAndCommercialUseMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription" xlink:label="us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="us-gaap_IncomeTaxAuthorityNameAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashFlowOperatingActivitiesLesseeAbstract" xlink:label="us-gaap_CashFlowOperatingActivitiesLesseeAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentDescriptionOfVariableRateBasis" xlink:label="us-gaap_DebtInstrumentDescriptionOfVariableRateBasis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesReceivable" xlink:label="us-gaap_IncomeTaxesReceivable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_Rule10B51ArrModifiedFlag" xlink:label="trex_Rule10B51ArrModifiedFlag"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_IndustrialRevenueBondsMember" xlink:label="trex_IndustrialRevenueBondsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted" xlink:label="us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtWeightedAverageInterestRate" xlink:label="us-gaap_DebtWeightedAverageInterestRate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramAxis" xlink:label="srt_ShareRepurchaseProgramAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NatureOfOperations" xlink:label="us-gaap_NatureOfOperations"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="us-gaap_LeasesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AreaOfLand" xlink:label="us-gaap_AreaOfLand"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SwinglineLetterOfCreditMember" xlink:label="trex_SwinglineLetterOfCreditMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedMarketingCostsCurrent" xlink:label="us-gaap_AccruedMarketingCostsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable" xlink:label="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ComponentsOfBasicAndDilutedEarningPerShareTable" xlink:label="trex_ComponentsOfBasicAndDilutedEarningPerShareTable"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_AgreementDomain" xlink:label="trex_AgreementDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_CreditFacilityOneDomain" xlink:label="trex_CreditFacilityOneDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InvestmentsAllOtherInvestmentsAbstract" xlink:label="us-gaap_InvestmentsAllOtherInvestmentsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="us-gaap_PrepaidExpenseCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_RevolvingBLoanMember" xlink:label="trex_RevolvingBLoanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PerformanceBasedRestrictedStockAndPerformanceBasedRestrictedStockUnitsMember" xlink:label="trex_PerformanceBasedRestrictedStockAndPerformanceBasedRestrictedStockUnitsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablePortfolioSegmentAxis" xlink:label="us-gaap_FinancingReceivablePortfolioSegmentAxis"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems" xlink:label="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_CommercialUseMember" xlink:label="trex_CommercialUseMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_CapitalExpendituresInAccountsPayableAndAccruedExpenses" xlink:label="trex_CapitalExpendituresInAccountsPayableAndAccruedExpenses"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyLiabilityLineItems" xlink:label="us-gaap_ProductWarrantyLiabilityLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PaymentsForProceedsFromFinancingCosts" xlink:label="trex_PaymentsForProceedsFromFinancingCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GuaranteeObligationsNatureDomain" xlink:label="us-gaap_GuaranteeObligationsNatureDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_TimeBasedRestrictedStockUnitsMember" xlink:label="trex_TimeBasedRestrictedStockUnitsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NumberOfReportableSegments" xlink:label="us-gaap_NumberOfReportableSegments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="us-gaap_DebtInstrumentMaturityDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquireIntangibleAssets" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:label="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_WarrantyPeriod" xlink:label="trex_WarrantyPeriod"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PerformanceBasedRestrictedStockUnitsMember" xlink:label="trex_PerformanceBasedRestrictedStockUnitsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramDomain" xlink:label="srt_ShareRepurchaseProgramDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration" xlink:label="us-gaap_ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" xlink:label="us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_TwoThousandTwentyThreeStockRepurchaseProgramMember" xlink:label="trex_TwoThousandTwentyThreeStockRepurchaseProgramMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SupplyCommitmentAxis" xlink:label="us-gaap_SupplyCommitmentAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SupplyCommitmentArrangementMember" xlink:label="us-gaap_SupplyCommitmentArrangementMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_TimeBasedRestrictedStockandRestrictedstockUnitsMember" xlink:label="trex_TimeBasedRestrictedStockandRestrictedstockUnitsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract" xlink:label="us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_CreditAgreementSecondAmendmentMember" xlink:label="trex_CreditAgreementSecondAmendmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="us-gaap_InventoryDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="us-gaap_AccruedIncomeTaxesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LetterOfCreditMember" xlink:label="us-gaap_LetterOfCreditMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="us-gaap_LineOfCreditFacilityTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_NumberOfSalesRetailers" xlink:label="trex_NumberOfSalesRetailers"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_AccruedManufacturingExpensesCurrent" xlink:label="trex_AccruedManufacturingExpensesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SoftwareDevelopmentMember" xlink:label="us-gaap_SoftwareDevelopmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="us-gaap_InventoryDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SeasonalityDisclosureTextBlock" xlink:label="trex_SeasonalityDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LIFOInventoryAmount" xlink:label="us-gaap_LIFOInventoryAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyLiabilityTable" xlink:label="us-gaap_ProductWarrantyLiabilityTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryFinishedGoods" xlink:label="us-gaap_InventoryFinishedGoods"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResidentialPortfolioSegmentMember" xlink:label="us-gaap_ResidentialPortfolioSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesIssued" xlink:label="us-gaap_SharesIssued"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockValue" xlink:label="us-gaap_TreasuryStockValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrualNoncurrent" xlink:label="us-gaap_StandardProductWarrantyAccrualNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember" xlink:label="trex_ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="us-gaap_ValuationAllowancesAndReservesDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_AccruedCapitalProjectsCurrent" xlink:label="trex_AccruedCapitalProjectsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PercentSensitivityChangeInExpectedSurfaceFlakingClaims" xlink:label="trex_PercentSensitivityChangeInExpectedSurfaceFlakingClaims"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_EmployeeStockPurchasePlanMember" xlink:label="trex_EmployeeStockPurchasePlanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReportingUnitAxis" xlink:label="us-gaap_ReportingUnitAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SignatureRailingAndTranscendCladdingMember" xlink:label="trex_SignatureRailingAndTranscendCladdingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsCurrent" xlink:label="us-gaap_OtherAssetsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancialInstrumentsDisclosureTextBlock" xlink:label="us-gaap_FinancialInstrumentsDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LinesOfCreditCurrent" xlink:label="us-gaap_LinesOfCreditCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockAppreciationRightsSARSMember" xlink:label="us-gaap_StockAppreciationRightsSARSMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContingentConsiderationTypeDomain" xlink:label="us-gaap_ContingentConsiderationTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" xlink:label="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrualCurrent" xlink:label="us-gaap_StandardProductWarrantyAccrualCurrent"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice" xlink:label="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReportingUnitDomain" xlink:label="us-gaap_ReportingUnitDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" xlink:label="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock" xlink:label="trex_ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="us-gaap_DebtDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="us-gaap_TreasuryStockSharesAcquired"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable" xlink:label="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:label="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="us-gaap_RevolvingCreditFacilityMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryLIFOReserve" xlink:label="us-gaap_InventoryLIFOReserve"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SupplementalBalanceSheetInformationAbstract" xlink:label="trex_SupplementalBalanceSheetInformationAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InternalRevenueServiceIRSMember" xlink:label="us-gaap_InternalRevenueServiceIRSMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" xlink:label="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_AgreementAxis" xlink:label="trex_AgreementAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ResidentialUseMember" xlink:label="trex_ResidentialUseMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SurfaceFlakingMember" xlink:label="trex_SurfaceFlakingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PrepaidAndOtherCurrentAssetsDisclosureTextBlock" xlink:label="trex_PrepaidAndOtherCurrentAssetsDisclosureTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateImmaterialEffect" xlink:label="us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateImmaterialEffect"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PresidentAndChiefExecutiveOfficerMember" xlink:label="trex_PresidentAndChiefExecutiveOfficerMember"/>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Statement [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statement [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PerformanceBasedRestrictedStockAdjustmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Performance Based Restricted Stock Adjustment [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PerformanceBasedRestrictedStockAdjustmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Performance Based Restricted Stock Adjustment Member</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Effect of dilutive securities:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Incremental Weighted Average Shares Attributable to Dilutive Effect [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt Instrument [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Summary of Stock-Based Compensation Grants</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Stock-Based Compensation Grants</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Accounts receivable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Accounts Receivable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PlanNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Plan Name [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PlanNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Plan Name [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PerformanceBasedRestrictedStockAndrestrictedStockunitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Performance-Based Restricted Stock and Restricted Stock Units [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PerformanceBasedRestrictedStockAndrestrictedStockunitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Performance Based Restricted Stock And Restricted Stock Units [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PerformanceBasedRestrictedStockAndrestrictedStockunitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Performance&#8203; based &#8203;restricted&#8203; stock&#8203; and&#8203; restricted&#8203; stock&#8203; units.&#8203;</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Shares withheld for taxes on awards</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Adjustments Related to Tax Withholding for Share-based Compensation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressPostalZipCode_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Address, Postal Zip Code</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsAndLiabilitiesLesseeAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Operating lease liabilities:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsAndLiabilitiesLesseeAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Assets and Liabilities, Lessee [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityIncorporationStateCountryCode_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Incorporation, State or Country Code</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestPaidNet_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Cash paid for interest, net of capitalized interest</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestPaidNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Interest Paid, Excluding Capitalized Interest, Operating Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Unrecognized compensation cost related to unvested awards</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Share-based Awards Other than Options</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxAuthorityNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax Authority, Name [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherNoncashIncomeExpense_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Other non-cash adjustments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherNoncashIncomeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Noncash Income (Expense)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IntangibleAssetsNetIncludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Goodwill and other intangible assets, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IntangibleAssetsNetIncludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Intangible Assets, Net (Including Goodwill)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OpenTaxYear_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Tax years subject to examination</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OpenTaxYear_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Open Tax Year</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2025</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Leases</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Leases [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Commitments and Contingencies</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Commitments and Contingencies Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_TwoThousandFourteenStockIncentivePlanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2014 Stock Incentive Plan [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_TwoThousandFourteenStockIncentivePlanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Two Thousand Fourteen Stock Incentive Plan [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_TwoThousandFourteenStockIncentivePlanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Two Thousand Fourteen Stock Incentive Plan [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ProductOrServiceAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Product and Service [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Deferred income taxes</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Income Tax Liabilities, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Assets by Major Class [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lender Name [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DepreciationDepletionAndAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Depreciation and amortization</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DepreciationDepletionAndAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Depreciation, Depletion and Amortization</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BaseRateMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Base Rate [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_BaseRateMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Base Rate [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Adjustments to reconcile net income to net cash used in operating activities:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Adjustments, Noncash Items, to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PrepaidExpenseAndOtherAssetsCurrentTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Prepaid Expenses and Other Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PrepaidExpenseAndOtherAssetsCurrentTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Prepaid Expense And Other Assets Current [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PrepaidExpenseAndOtherAssetsCurrentTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Tabular disclosure pertaining to prepaid expense and other assets current.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock repurchased during period, shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Repurchased During Period, Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfGoodwillTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Goodwill [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfGoodwillTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Goodwill [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ClassOfTreasuryStockTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Class of Treasury Stock [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ClassOfTreasuryStockTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Class of Treasury Stock [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stockholders' Equity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stockholders' Equity Note Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revenue From Contracts With Customers</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue from Contract with Customer [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Products Sold on or After January One, Two Thousand and Twenty Three [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Products sold on or after january&#160;one, two thousand and twenty three [Member].</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock-based compensation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Issued During Period, Value, Share-based Compensation, Gross</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentCarryingAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Debt, Gross</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentCarryingAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Bonds issue</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Remaining available borrowing capacity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Line of Credit Facility, Remaining Borrowing Capacity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Amortization period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Asset, Useful Life</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityCentralIndexKey_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Central Index Key</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Common stock, shares issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock, Shares, Issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Prepaid expenses and other assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Prepaid Expense and Other Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeStatementAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Statement [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_NewAccountingStandardsNotYetAdoptedAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">New Accounting Standards Not Yet Adopted [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_NewAccountingStandardsNotYetAdoptedAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">New accounting standards not yet adopted [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressStateOrProvince_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Address, State or Province</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Income before income taxes</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SurfaceFlakingWarrantyReserveMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Surface Flaking Warranty Reserve [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SurfaceFlakingWarrantyReserveMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Surface Flaking Warranty Reserve [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SurfaceFlakingWarrantyReserveMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Surface Flaking Warranty Reserve [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EquityClassOfTreasuryStockLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Equity, Class of Treasury Stock [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EquityClassOfTreasuryStockLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Equity, Class of Treasury Stock [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountingStandardsUpdateExtensibleList_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounting Standards Update [Extensible Enumeration]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_StockAppreciationRightsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Stock appreciation rights [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_StockAppreciationRightsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Appreciation Rights [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityExpirationDate1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Termination date of the Credit Agreement</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityExpirationDate1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Line of Credit Facility, Expiration Date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SensitivityChangeInSurfaceFlakingWarrantyReserve_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Change in warranty reserve for disclosure purposes only</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SensitivityChangeInSurfaceFlakingWarrantyReserve_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Sensitivity Change In Surface Flaking Warranty Reserve</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SensitivityChangeInSurfaceFlakingWarrantyReserve_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Estimated change in the warranty reserve resulting from a 10% change in the expected number of remaining claims to be settled with payment or the expected cost to settle claims for disclosure purposes only.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ScheduleOfCommitmentsAndContingenciesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule Of Commitments And Contingencies [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ScheduleOfCommitmentsAndContingenciesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule Of Commitments And Contingencies [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ScheduleOfCommitmentsAndContingenciesTable_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Schedule Of Commitments And Contingencies [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryRawMaterials_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Raw materials</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryRawMaterials_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Inventory, Raw Materials, Gross</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonShares_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Treasury stock, shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonShares_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Treasury Stock, Common, Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonShares_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Beginning Balance, Treasury Stock, Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonShares_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Ending Balance, Treasury Stock, Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_CoverAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cover [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Basic earnings per share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Basic earnings per common share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Earnings Per Share, Basic</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxContingencyLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income Tax Contingency [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxContingencyLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax Contingency [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_RevolvingALoansMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revolving A Loans [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_RevolvingALoansMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Revolving A loans.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_RevolvingALoansMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revolving A Loan [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxContingencyTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income Tax Contingency [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxContingencyTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax Contingency [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StandardProductWarrantyAccrualPayments_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Settlements made during the period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StandardProductWarrantyAccrualPayments_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Standard Product Warranty Accrual, Decrease for Payments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Share Based Compensation Arrangement by Share Based Payment Award Fair Value Assumptions and Methodology [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share Based Compensation Arrangement by Share Based Payment Award Fair Value Assumptions and Methodology [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Share Based Compensation Arrangement by Share Based Payment Award Fair Value Assumptions and Methodology [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock-based compensation expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Allocated Share-based Compensation Expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Retained earnings</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Retained Earnings (Accumulated Deficit)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PlanNameAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Plan Name [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PlanNameAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Plan Name [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentReportingAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segment Reporting [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SignatureRailingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Signature Railing [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SignatureRailingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Signature railing [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsCurrentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Current assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsCurrentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Assets, Current [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of common stock available for future issuance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock, Capital Shares Reserved for Future Issuance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Cash Provided by (Used in) Operating Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Net cash provided by operating activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ProductsAndServicesDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Product and Service [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryGross_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total FIFO (first-in, first-out) inventories</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Inventory, Gross</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Property, plant and equipment, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PropertyPlantAndEquipmentNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Property, Plant and Equipment, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, Payments, Due Year Four</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">2029</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">OPERATING ACTIVITIES</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GuaranteeObligationsByNatureAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Guarantor Obligations, Nature [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GuaranteeObligationsByNatureAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Guarantor Obligations, Nature [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Common stock, par value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock, Par or Stated Value Per Share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_FifthAmendmentAndRestatedAgreementMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Fifth Amendment And Restated Agreement [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_FifthAmendmentAndRestatedAgreementMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Fifth Amendment And Restated Agreement [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_FifthAmendmentAndRestatedAgreementMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Fifth amendment and restated agreement member.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementOfCashFlowsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statement of Cash Flows [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Antidilutive Securities, Name [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Antidilutive Securities, Name [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestrictedStockMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Restricted stock [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RestrictedStockMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Restricted Stock [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementEquityComponentsAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Equity Components [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementEquityComponentsAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Equity Components [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressAddressLine1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Address, Address Line One</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Enhance Decking And Transcend, Select, Enhance And Signature Railing [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Enhance decking and transcend, select, enhance and signature railing.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Computation of Basic and Diluted Earnings Per Share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Compensation and benefits</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Employee-related Liabilities, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock Awards Granted</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Number of shares or rights issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Antidilutive Securities Excluded from Computation of Earnings Per Share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revolving loans in a collective maximum principal amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Line of Credit Facility, Maximum Borrowing Capacity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Average risk-free interest rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StandardProductWarrantyAccrual_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Beginning balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StandardProductWarrantyAccrual_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Ending balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StandardProductWarrantyAccrual_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Standard Product Warranty Accrual</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Recently Adopted Accounting Standards</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">New Accounting Pronouncements and Changes in Accounting Principles [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_AmendmentFlag_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Amendment Flag</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_TwoThousandEighteenStockRepurchaseProgramMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">2018 Stock Repurchase Program [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_TwoThousandEighteenStockRepurchaseProgramMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Two Thousand Eighteen Stock Repurchase Program [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_TwoThousandEighteenStockRepurchaseProgramMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Two thousand eighteen stock repurchase program.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Operating lease liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Liability, Noncurrent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_TranscendDeckingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Transcend Decking [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_TranscendDeckingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Transcend decking.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TextBlockAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Text Block [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LessorOperatingLeaseTermOfContract_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Operating Lease terms</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LessorOperatingLeaseTermOfContract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessor, Operating Lease, Term of Contract</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt Instrument, Name [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Name [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Additional paid-in capital</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Additional Paid in Capital, Common Stock</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ExcessTaxBenefitsFromStockBasedAwards_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Excess tax benefits from stock based awards</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ExcessTaxBenefitsFromStockBasedAwards_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Excess Tax Benefits From Stock Based Awards</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ExcessTaxBenefitsFromStockBasedAwards_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Excess Tax Benefits From Stock Based Awards.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Net income</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Net income available to common shareholders</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_VariableRateDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Variable Rate [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_VariableRateDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Variable Rate [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SupplementalFinancialInformationOfOperatingLeasesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Supplemental Cash Flow information and Supplemental balance sheet information related to operating leases to operating leases</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SupplementalFinancialInformationOfOperatingLeasesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Supplemental Financial Information Of Operating Leases [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SupplementalFinancialInformationOfOperatingLeasesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Table includes supplemental cash flow information and supplemental balance sheet information related to operating leases</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EquityComponentDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Equity Component [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EquityComponentDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Equity Component [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_RangeMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Range [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_RangeMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statistical Measurement [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Proceeds from sales of property, plant and equipment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds from Sale of Property, Plant, and Equipment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Accrued expenses and other current liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee Operating leases Accrued Expenses And Other Current Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Represents accrued expenses and other current liabilities of operating leases</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Treasury Stock [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockCommonMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Treasury Stock, Common [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ScheduleOfCommitmentsAndContingenciesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule Of Commitments And Contingencies [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ScheduleOfCommitmentsAndContingenciesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule Of Commitments And Contingencies [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ScheduleOfCommitmentsAndContingenciesLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Schedule of commitments and contingencies.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Provisions and changes in estimates</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Standard Product Warranty Accrual, Increase (Decrease) for Preexisting Warranties</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromLinesOfCredit_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Borrowings under line of credit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromLinesOfCredit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds from Lines of Credit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProfitLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Net income</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProfitLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Income (Loss), Including Portion Attributable to Noncontrolling Interest</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinancingReceivablePortfolioSegmentDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Financing Receivable Portfolio Segment [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinancingReceivablePortfolioSegmentDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Financing Receivable Portfolio Segment [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Preferred stock, shares issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Preferred Stock, Shares Issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeasePayments_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Cash paid for amounts included in the measurement of operating lease liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeasePayments_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Payments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PayablesAndAccrualsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payables and Accruals [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Equity Award [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total prepaid expenses and other assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Prepaid expenses and other assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Prepaid Expense and Other Assets, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ClassOfStockDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Class of Stock [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ProductWarrantyMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Product Warranty [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ProductWarrantyMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Product Warranty [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ProductWarrantyMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Product warranty.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Comprehensive income</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Comprehensive Income (Loss), Net of Tax, Attributable to Parent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Common stock, shares outstanding</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock, Shares, Outstanding</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Assets, Major Class Name [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestIncomeExpenseNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Interest Income (Expense), Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InterestIncomeExpenseNet_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Interest expense (income), net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContingentConsiderationByTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contingent Consideration by Type [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContingentConsiderationByTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contingent Consideration by Type [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Preferred stock, par value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Preferred Stock, Par or Stated Value Per Share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock-based compensation, Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Issued During Period, Shares, Share-based Compensation, Gross</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RepaymentsOfLinesOfCredit_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Principal payments under line of credit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RepaymentsOfLinesOfCredit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Repayments of Lines of Credit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Antidilutive Securities [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Antidilutive Securities [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityInteractiveDataCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Interactive Data Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentQuarterlyReport_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Document Quarterly Report</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Goodwill [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Goodwill [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Cash and cash equivalents, beginning of period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Cash and cash equivalents, end of period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_RangeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Range [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_RangeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statistical Measurement [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CostOfGoodsAndServicesSold_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cost of sales</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CostOfGoodsAndServicesSold_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cost of Goods and Services Sold</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseCost_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Operating lease cost</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseCost_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Cost</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_LineOfCreditFacilityAdditionalBorrowingCapacity_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revolving loans in a collective maximum principal amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_LineOfCreditFacilityAdditionalBorrowingCapacity_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Line of Credit Facility Additional Borrowing Capacity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_LineOfCreditFacilityAdditionalBorrowingCapacity_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Line of Credit Facility, Additional Borrowing Capacity.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Maturities of operating lease liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, Maturity [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Weighted-average fair value of grants</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Assets_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Assets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Expected term (years)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Term</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">New Accounting Standards Not Yet Adopted</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Description Of New Accounting Standards Not Yet Adopted [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Description of new accounting standards not yet adopted.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityAddressCityOrTown_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Address, City or Town</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Equity [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Stock-Based Compensation Expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Compensation Cost for Share-based Payment Arrangements, Allocation of Share-based Compensation Costs by Plan [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetIncomeLossAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Numerator:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetIncomeLossAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Income (Loss) Attributable to Parent [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock-Based Compensation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disclosure of Compensation Related Costs, Share-based Payments [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total aggregate number of shares of common stock that may be issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Employee stock plans, Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Issued During Period, Shares, Share-based Compensation, Net of Forfeitures</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Weighted average discount rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Weighted Average Discount Rate, Percent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segment Reporting, CODM, Individual Title and Position or Group Name [Extensible Enumeration]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InternetDomainNamesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Domain Names [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InternetDomainNamesMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Internet Domain Names [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Current liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrentAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Liabilities, Current [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_GrossAssetAndLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Gross asset and liability</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_GrossAssetAndLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Gross asset and liability</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_GrossAssetAndLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Gross asset and liability</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxesPaidNet_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Cash paid for income taxes, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxesPaidNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Taxes Paid, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentType_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Document Type</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Reconciliation of Company's Residential Product Warranty Reserve</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Product Warranty Liability [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_Security12bTitle_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Title of 12(b) Security</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Cash and cash equivalents</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash and Cash Equivalents, at Carrying Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statement of Stockholders' Equity [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentFiscalPeriodFocus_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Document Fiscal Period Focus</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Indefinite-lived Intangible Assets [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Indefinite-lived Intangible Assets [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Assumptions Used to Estimate Fair Value of Each SAR</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ValuationAllowancesAndReservesTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">SEC Schedule, 12-09, Valuation Allowances and Reserves Type [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ValuationAllowancesAndReservesTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">SEC Schedule, 12-09, Valuation Allowances and Reserves Type [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountingChangesAndErrorCorrectionsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounting Changes and Error Corrections [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_CreditFacilityOneAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Credit Facility One [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_CreditFacilityOneAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Credit Facility One [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_CreditFacilityOneAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Credit facility one axis.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">INVESTING ACTIVITIES</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Cash Provided by (Used in) Investing Activities [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Repurchases of common stock</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments for Repurchase of Common Stock</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Category of Item Purchased [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Category of Item Purchased [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Net sales</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue from Contract with Customer, Excluding Assessed Tax</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income Taxes</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Line of Credit Facility [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Line of Credit Facility [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Selling, general and administrative expenses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Selling, General and Administrative Expense</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Repurchased During Period, Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Repurchases of common stock</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CreditFacilityDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Credit Facility [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CreditFacilityDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Credit Facility [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Accrued Liabilities, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accounts payable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Accounts Payable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">LIABILITIES AND STOCKHOLDERS' EQUITY</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Liabilities and Equity [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentPeriodEndDate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Document Period End Date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Cash Provided by (Used in) Financing Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Net cash provided by (used in) financing activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Prepaid Expense and Other Assets [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_NonRule10B51ArrModifiedFlag_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Non Rule 10b51 Arr Modified Flag</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_NonRule10B51ArrModifiedFlag_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Non rule 10b51 arr modified flag.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_NonRule10B51ArrModifiedFlag_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Non-Rule 10b5-1 Arrangement Modified</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Effective tax rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Effective Income Tax Rate Reconciliation, Percent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquityNoteAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stockholders' Equity Note [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Anti-dilutive securities excluded from the computation of diluted earnings per share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SelectDeckingAndUniversalFasciaMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Select Decking And Universal Fascia [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SelectDeckingAndUniversalFasciaMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Select decking and universal fascia.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Thereafter</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, Payments, Due after Year Five</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ResidentialAndCommercialUseMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Residential and Commercial Use [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ResidentialAndCommercialUseMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Residential and commercial use member.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segment Reporting, CODM, Profit (Loss) Measure, How Used, Description</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Segment reporting CODM profit loss measure how used description</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Provision for income taxes</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income tax expense (benefit)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax Expense (Benefit)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxAuthorityNameAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax Authority, Name [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Gain (Loss) on Disposition of Property Plant Equipment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">(Gain)/Loss on disposal of property, plant and equipment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_TradingSymbol_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Trading Symbol</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashFlowOperatingActivitiesLesseeAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Supplemental cash flow information</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashFlowOperatingActivitiesLesseeAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash Flow, Operating Activities, Lessee [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_VariableRateAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Variable Rate [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_VariableRateAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Variable Rate [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total stockholders' equity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Beginning Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Ending Balance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stockholders' Equity Attributable to Parent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentDescriptionOfVariableRateBasis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Description of Variable Rate Basis</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentDescriptionOfVariableRateBasis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt instrument, description of variable rate basis</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxesReceivable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income tax receivable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxesReceivable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Taxes Receivable, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherLiabilitiesNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other long-term liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherLiabilitiesNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Liabilities, Noncurrent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_Rule10B51ArrModifiedFlag_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Rule10b51 Arr Modified Flag</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_Rule10B51ArrModifiedFlag_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Rule10b51 arr modified flag.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_Rule10B51ArrModifiedFlag_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Rule 10b5-1 Arrangement Modified</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_IndustrialRevenueBondsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Industrial Revenue Bonds Member</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_IndustrialRevenueBondsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Industrial Revenue Bonds.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_IndustrialRevenueBondsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Industrial Revenue Bonds [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Goodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Goodwill</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Goodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Goodwill</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Change in Accounting Principle, Accounting Standards Update, Adopted [true false]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtWeightedAverageInterestRate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt, Weighted Average Interest Rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtWeightedAverageInterestRate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt, Weighted Average Interest Rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ShareRepurchaseProgramAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Share Repurchase Program [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ShareRepurchaseProgramAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share Repurchase Program [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NatureOfOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Business and Organization</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NatureOfOperations_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Nature of Operations [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Deferred Income Taxes</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Income Tax Expense (Benefit)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LeasesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Leases [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AreaOfLand_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Area of Land</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SwinglineLetterOfCreditMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Swingline Letter Of Credit [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SwinglineLetterOfCreditMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Swingline Letter Of Credit [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SwinglineLetterOfCreditMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Swingline letter of credit member.
.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccruedMarketingCostsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Sales and marketing</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccruedMarketingCostsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accrued Marketing Costs, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions And Methodology [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions And Methodology [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions And Methodology [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ComponentsOfBasicAndDilutedEarningPerShareTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Components Of Basic And Diluted Earning Per Share [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ComponentsOfBasicAndDilutedEarningPerShareTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Components Of Basic And Diluted Earning Per Share [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ComponentsOfBasicAndDilutedEarningPerShareTable_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Components Of Basic And Diluted Earning Per Share [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_AgreementDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Agreement [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_AgreementDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Agreement [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_AgreementDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Agreement domain.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Dividend yield</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_CreditFacilityOneDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Credit Facility One [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_CreditFacilityOneDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Credit Facility One [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_CreditFacilityOneDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Credit facility one domain.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_SecurityExchangeName_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Security Exchange Name</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementClassOfStockAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Class of Stock [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InvestmentsAllOtherInvestmentsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Investments, All Other Investments [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, Payments, Due Year Three</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">2028</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_MaximumMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Maximum [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_MaximumMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Maximum [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total liabilities and stockholders' equity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Liabilities and Equity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Intangible Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Intangible Assets, Gross (Excluding Goodwill)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Operating lease assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating lease ROU assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Right-of-Use Asset</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PrepaidExpenseCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Prepaid expenses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PrepaidExpenseCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Prepaid Expense, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Supplemental Disclosure:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Supplemental Cash Flow Information [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_RevolvingBLoanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revolving B Loan [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_RevolvingBLoanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revolving B Loan [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_RevolvingBLoanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Revolving b loan.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareDiluted_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Diluted earnings per share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareDiluted_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Diluted earnings per common share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_EarningsPerShareDiluted_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Earnings Per Share, Diluted</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PerformanceBasedRestrictedStockAndPerformanceBasedRestrictedStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Performance-Based Restricted Stock and Performance-Based Restricted Stock Units [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PerformanceBasedRestrictedStockAndPerformanceBasedRestrictedStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Performance Based Restricted Stock And Performance Based Restricted Stock Units [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PerformanceBasedRestrictedStockAndPerformanceBasedRestrictedStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Performance based restricted stock and performance based restricted stock units.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Liabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_Liabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total current assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Assets, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Changes in operating assets and liabilities:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Operating Assets [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Net cash used in investing activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Cash Provided by (Used in) Investing Activities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityFilerCategory_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Filer Category</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Goodwill and Other Intangible Assets, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Goodwill and Intangible Assets Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinancingReceivablePortfolioSegmentAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Financing Receivable Portfolio Segment [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinancingReceivablePortfolioSegmentAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Financing Receivable Portfolio Segment [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Components Of Basic And Diluted Earning Per Share [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Components Of Basic And Diluted Earning Per Share [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Components Of Basic And Diluted Earning Per Share [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_CommercialUseMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Commercial Use [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_CommercialUseMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Commercial Use [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_CommercialUseMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Commercial use.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_CapitalExpendituresInAccountsPayableAndAccruedExpenses_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Capital expenditures in accounts payable and accrued expenses.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_CapitalExpendituresInAccountsPayableAndAccruedExpenses_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Capital Expenditures In Accounts Payable and Accrued Expenses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_CapitalExpendituresInAccountsPayableAndAccruedExpenses_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Capital expenditures in accounts payable and accrued expenses</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProductWarrantyLiabilityLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Product Warranty Liability [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProductWarrantyLiabilityLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Product Warranty Liability [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Basis of Presentation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PaymentsForProceedsFromFinancingCosts_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Financing costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PaymentsForProceedsFromFinancingCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments For Proceeds From Financing Costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PaymentsForProceedsFromFinancingCosts_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Payments for (proceeds from) financing costs.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GuaranteeObligationsNatureDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Guarantor Obligations, Nature [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GuaranteeObligationsNatureDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Guarantor Obligations, Nature [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_CurrentFiscalYearEndDate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Current Fiscal Year End Date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Less imputed interest</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AwardTypeAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Award Type [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stock-based compensation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-based Compensation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityRegistrantName_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Registrant Name</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_TimeBasedRestrictedStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Time Based Restricted Stock Units [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_TimeBasedRestrictedStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Time Based Restricted Stock Units [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Indefinite-lived Intangible Assets, Major Class Name [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Indefinite-lived Intangible Assets, Major Class Name [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GrossProfit_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Gross profit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GrossProfit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Gross Profit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NumberOfReportableSegments_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Number of reportable segments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NumberOfReportableSegments_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Number of Reportable Segments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentMaturityDate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Matutiry date of credit agreement</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentMaturityDate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Maturity Date</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityEmergingGrowthCompany_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Emerging Growth Company</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments to Acquire Intangible Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Purchased intangibles</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Purchased intangibles</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Weighted Average Number of Shares Outstanding, Basic</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Basic weighted average shares outstanding</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Basic weighted average common shares outstanding</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease Liabilities, Payments Due [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_WarrantyPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Warranty period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_WarrantyPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Warranty Period</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_WarrantyPeriod_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">The number of years the Company warrants that its products will be free from material defects in workmanship and materials.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PerformanceBasedRestrictedStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Performance Based Restricted Stock Units [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PerformanceBasedRestrictedStockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Performance Based Restricted Stock Units [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesAuthorized_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Common stock, shares authorized</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockSharesAuthorized_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock, Shares Authorized</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ShareRepurchaseProgramDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Share Repurchase Program [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_ShareRepurchaseProgramDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share Repurchase Program [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Shares withheld for taxes on awards, Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Shares Paid for Tax Withholding for Share Based Compensation</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-Based Payment Arrangement, Valuation Technique [Extensible Enumeration]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Fair value assumptions method used</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AmortizationOfIntangibleAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Amortization of intangible asset</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AmortizationOfIntangibleAssets_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Amortization of Intangible Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Long-term Purchase Commitment, Category of Item Purchased [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-term Purchase Commitment, Category of Item Purchased [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Disclosure of Compensation Related Costs, Share-based Payments [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Employee stock plans</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_TwoThousandTwentyThreeStockRepurchaseProgramMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">2023 Stock Repurchase Program [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_TwoThousandTwentyThreeStockRepurchaseProgramMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Two Thousand Twenty Three Stock Repurchase Program [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_TwoThousandTwentyThreeStockRepurchaseProgramMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">2023 stock repurchase program member.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountingPoliciesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounting Policies [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SupplyCommitmentAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Supply Commitment [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCredit_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Long-Term Line of Credit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCredit_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Long-Term Line of Credit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncomeTaxDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Income Tax Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Stockholders' equity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockholdersEquityAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Stockholders' Equity Attributable to Parent [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SupplyCommitmentArrangementMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Supply Commitment Arrangement [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_TimeBasedRestrictedStockandRestrictedstockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Time-Based Restricted Stock and Restricted Stock Units [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_TimeBasedRestrictedStockandRestrictedstockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Time Based Restricted Stock And Restricted Stock Units [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_TimeBasedRestrictedStockandRestrictedstockUnitsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Time&#8203; based&#8203; restricted&#8203; stock &#8203;and&#8203; restricted &#8203;stock&#8203; units.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Supplemental non-cash investing and financing disclosure:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash Flow, Noncash Investing and Financing Activities Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Statement [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statement [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Denominator:</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Weighted Average Number of Shares Outstanding, Basic [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesAuthorized_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Preferred stock, shares authorized</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesAuthorized_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Preferred Stock, Shares Authorized</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityFileNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity File Number</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Segment Information</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Segment Reporting Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Net decrease in cash and cash equivalents</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revenue from Contract with Customer [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_CreditAgreementSecondAmendmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Credit Agreement Second Amendment [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_CreditAgreementSecondAmendmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Credit agreement second amendment.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_CreditAgreementSecondAmendmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Credit Agreement Second Amendment [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Inventory Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StatementOfFinancialPositionAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Statement of Financial Position [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Income from operations</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingIncomeLoss_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Income (Loss)</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Expected volatility</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccruedIncomeTaxesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income Taxes</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccruedIncomeTaxesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accrued Income Taxes, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LetterOfCreditMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Letter of Credit [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LetterOfCreditMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Letter of Credit [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityShellCompany_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Shell Company</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Line of Credit Facility [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Line of Credit Facility [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityTaxIdentificationNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Tax Identification Number</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">ASSETS</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AssetsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Assets [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_NumberOfSalesRetailers_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Number of national sales retailers.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_NumberOfSalesRetailers_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Number Of Sales Retailers</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_NumberOfSalesRetailers_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of national retailers</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityCurrentReportingStatus_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Current Reporting Status</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_AccruedManufacturingExpensesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Manufacturing costs</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_AccruedManufacturingExpensesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accrued Manufacturing Expenses Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_AccruedManufacturingExpensesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Accrued expenses related to manufacturing facilities primarily consisting of accrued utilities, equipment rentals and temporary labor expenses.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SoftwareDevelopmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Software Development [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SoftwareDevelopmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Internal Use Software [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Inventories</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Inventory Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentFiscalYearFocus_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Document Fiscal Year Focus</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Preferred stock, $0.01 par value, 3,000,000 shares authorized; none issued and outstanding</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Preferred Stock, Value, Issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accumulated Amortization</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Finite-Lived Intangible Assets, Accumulated Amortization</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_CityAreaCode_lbl" xlink:role="http://www.xbrl.org/2003/role/label">City Area Code</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total current liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LiabilitiesCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Liabilities, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SeasonalityDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Seasonality</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SeasonalityDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Seasonality Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SeasonalityDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Identifies seasonal trends affecting the demand for Trex products and quarterly net sales.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Line of Credit Facility, Lender [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LIFOInventoryAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total LIFO inventories</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LIFOInventoryAmount_lbl" xlink:role="http://www.xbrl.org/2003/role/label">LIFO Inventory Amount</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryNet_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Inventories</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryNet_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Inventory, Net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProductWarrantyLiabilityTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Product Warranty Liability [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProductWarrantyLiabilityTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Product Warranty Liability [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryFinishedGoods_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Finished goods</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryFinishedGoods_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Inventory, Finished Goods, Gross</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Organization, Consolidation and Presentation of Financial Statements [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_LocalPhoneNumber_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Local Phone Number</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Preferred stock, shares outstanding</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PreferredStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Preferred Stock, Shares Outstanding</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ResidentialPortfolioSegmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Residential [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ResidentialPortfolioSegmentMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Residential Portfolio Segment [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Commitments and Contingencies Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel">Beginning Balance, Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel">Ending Balance, Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_SharesIssued_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Shares, Issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Treasury Stock, Value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockValue_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Treasury stock, at cost, 33,943,946 and 33,943,946 shares at March 31, 2025 and December 31, 2024</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StandardProductWarrantyAccrualNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Non-current accrued warranty</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StandardProductWarrantyAccrualNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Standard Product Warranty Accrual, Noncurrent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Operating lease liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Liability, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Products Sold Prior to January One, Two Thousand and Twenty Three [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Products sold prior to&#160;january&#160;one, two thousand and twenty three {Member].</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt instrument, Interest rate, Stated percentage</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Interest Rate, Stated Percentage</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RetainedEarningsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Retained Earnings [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RetainedEarningsMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Retained Earnings [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Expenditures for property, plant and equipment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Payments to Acquire Property, Plant, and Equipment</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_DocumentTransitionReport_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Document Transition Report</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, Payments, Due Year Two</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">2027</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ValuationAllowancesAndReservesDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">SEC Schedule, 12-09, Valuation Allowances and Reserves [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ValuationAllowancesAndReservesDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">SEC Schedule, 12-09, Valuation Allowances and Reserves [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_AccruedCapitalProjectsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Capital Projects</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_AccruedCapitalProjectsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Accrued capital projects current.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_AccruedCapitalProjectsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accrued Capital Projects Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_MinimumMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Minimum [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="srt_MinimumMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Minimum [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PercentSensitivityChangeInExpectedSurfaceFlakingClaims_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Percentage change in warranty claims used as a threshold for disclosure</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PercentSensitivityChangeInExpectedSurfaceFlakingClaims_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Percent Sensitivity Change In Expected Surface Flaking Claims</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PercentSensitivityChangeInExpectedSurfaceFlakingClaims_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Percentage change in the expected number of remaining claims to be settled with payment or the expected cost to settle claims used as a threshold for disclosure.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Common Stock [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_EmployeeStockPurchasePlanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Employee Stock Purchase Plan [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_EmployeeStockPurchasePlanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Employee Stock Purchase Plan [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_EmployeeStockPurchasePlanMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Employee stock purchase plan.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapitalMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Additional Paid-In Capital [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AdditionalPaidInCapitalMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Additional Paid-in Capital [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ReportingUnitAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Reporting Unit [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, Payments, Due Next Twelve Months</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">2026</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherAssetsNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherAssetsNoncurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Assets, Noncurrent</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Inventories</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Inventory, Current [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SignatureRailingAndTranscendCladdingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Signature Railing And Transcend Cladding [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SignatureRailingAndTranscendCladdingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Signature railing and transcend cladding.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherAssetsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Other</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OtherAssetsCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Other Assets, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Goodwill and Intangible Assets Disclosure [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntityCommonStockSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Common Stock, Shares Outstanding</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinancialInstrumentsDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Financial Instruments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_FinancialInstrumentsDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Financial Instruments Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accrued expenses and other liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Accrued Liabilities and Other Operating Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Income taxes receivable/payable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Income Taxes Payable, Net of Income Taxes Receivable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Common Stock, Value, Issued</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommonStockValue_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Common stock, $0.01 par value, 360,000,000 shares authorized; 141,170,958 and 141,098,251 shares issued and 107,227,012 and 107,154,305 shares outstanding, at March 31, 2025 and December 31, 2024, respectively</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LinesOfCreditCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Line of credit</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LinesOfCreditCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Line of Credit, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LinesOfCreditCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Outstanding borrowing capacity</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StockAppreciationRightsSARSMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Stock appreciation rights [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContingentConsiderationTypeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Contingent Consideration Type [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ContingentConsiderationTypeDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Contingent Consideration Type [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total operating lease liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Total operating lease liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Liability</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingencies_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Commitments and contingencies</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CommitmentsAndContingencies_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Commitments and Contingencies</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_lbl" xlink:role="http://www.xbrl.org/2003/role/label">New Accounting Pronouncements or Change in Accounting Principle [Line Items]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StandardProductWarrantyAccrualCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accrued warranty</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_StandardProductWarrantyAccrualCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Standard Product Warranty Accrual, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Weighted-Average Grant Price Per Share</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Share Based Compensation Arrangement By Share Based Payment Award Non Options Equity Instruments Granted Weighted Average Grant Price</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Share based compensation arrangement by share based payment award non options equity instruments granted weighted average grant price.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Diluted weighted average shares outstanding</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Diluted weighted average common shares outstanding</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Weighted Average Number of Shares Outstanding, Diluted</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsReceivableNetCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accounts receivable, net</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsReceivableNetCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounts Receivable, Net, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total lease payments</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Lessee, Operating Lease, Liability, Payments, Due</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Inventories</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncreaseDecreaseInInventories_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Increase (Decrease) in Inventories</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ReportingUnitDomain_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Reporting Unit [Domain]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty_lbl" xlink:role="http://www.xbrl.org/2003/role/totalLabel">Total accrued expenses and other liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accrued expenses and other liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accrued Liabilities And Other Liabilities Current Excluding Warranty</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Accrued liabilities and other liabilities current excluding warranty.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="dei_EntitySmallBusiness_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Entity Small Business</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Summary of Accrued Expenses and Other Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Schedule of Accrued Liabilities and Other Current Liabilities [Table Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Tabular disclosure of the components of accrued liabilities and other current liabilities.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Interest rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Instrument, Basis Spread on Variable Rate</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Debt</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DebtDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Debt Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockSharesAcquired_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Number of shares repurchased by the Company</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockSharesAcquired_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Treasury Stock, Shares, Acquired</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_TreasuryStockSharesAcquired_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedLabel">Repurchases of common stock, Shares</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounting Standards Update and Change in Accounting Principle [Table]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Proceeds from employee stock purchase and option plans</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Proceeds from Issuance of Shares under Incentive and Share-based Compensation Plans, Including Stock Options</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CreditFacilityAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Credit Facility [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_CreditFacilityAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Credit Facility [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevolvingCreditFacilityMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Revolving Credit Facility [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RevolvingCreditFacilityMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Revolving Credit Facility [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryLIFOReserve_lbl" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel">Reserve to adjust inventories to LIFO value</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InventoryLIFOReserve_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Inventory, LIFO Reserve</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SupplementalBalanceSheetInformationAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Supplemental balance sheet information</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SupplementalBalanceSheetInformationAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Supplemental balance sheet information [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">FINANCING ACTIVITIES</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Net Cash Provided by (Used in) Financing Activities [Abstract]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InternalRevenueServiceIRSMember_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Federal Tax Jurisdiction [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_InternalRevenueServiceIRSMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Internal Revenue Service (IRS) [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accrued Expenses and Other Liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounts Payable, Accrued Liabilities, and Other Liabilities Disclosure, Current [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Dilutive securities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Incremental Common Shares Attributable to Dilutive Effect of Share-based Payment Arrangements</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_AgreementAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Agreement [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_AgreementAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Agreement [Axis]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_AgreementAxis_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Agreement.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Operating ROU assets obtained in exchange for lease liabilities</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Right-of-Use Asset Obtained in Exchange for Operating Lease Liability</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ResidentialUseMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Residential Use [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ResidentialUseMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Residential Use [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_ResidentialUseMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Residential use.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Valuation allowance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Deferred Tax Assets, Valuation Allowance</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SurfaceFlakingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Surface Flaking [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SurfaceFlakingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Surface Flaking [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_SurfaceFlakingMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">Surface flaking.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl" xlink:role="http://www.xbrl.org/2003/role/verboseLabel">Weighted average remaining lease term</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Operating Lease, Weighted Average Remaining Lease Term</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsPayableCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Accounts payable</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_AccountsPayableCurrent_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Accounts Payable, Current</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PrepaidAndOtherCurrentAssetsDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/terseLabel">Prepaid Expenses and Other Assets</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PrepaidAndOtherCurrentAssetsDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Prepaid And Other Current Assets Disclosure [Text Block]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PrepaidAndOtherCurrentAssetsDisclosureTextBlock_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">The entire disclosure pertaining to prepaid and other current assets.</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateImmaterialEffect_lbl" xlink:role="http://www.xbrl.org/2003/role/label">Change in Accounting Principle, Accounting Standards Update, Immaterial Effect [true false]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PresidentAndChiefExecutiveOfficerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/label">President and Chief Executive Officer [Member]</link:label>
          <link:label xml:lang="en-US" xlink:type="resource" xlink:label="trex_PresidentAndChiefExecutiveOfficerMember_lbl" xlink:role="http://www.xbrl.org/2003/role/documentation">President and chief executive officer.</link:label>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_PerformanceBasedRestrictedStockAdjustmentMember" xlink:to="trex_PerformanceBasedRestrictedStockAdjustmentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xlink:to="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentAxis" xlink:to="us-gaap_DebtInstrumentAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PlanNameDomain" xlink:to="us-gaap_PlanNameDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_PerformanceBasedRestrictedStockAndrestrictedStockunitsMember" xlink:to="trex_PerformanceBasedRestrictedStockAndrestrictedStockunitsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsAndLiabilitiesLesseeAbstract" xlink:to="us-gaap_AssetsAndLiabilitiesLesseeAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestPaidNet" xlink:to="us-gaap_InterestPaidNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxAuthorityNameDomain" xlink:to="us-gaap_IncomeTaxAuthorityNameDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherNoncashIncomeExpense" xlink:to="us-gaap_OtherNoncashIncomeExpense_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsNetIncludingGoodwill" xlink:to="us-gaap_IntangibleAssetsNetIncludingGoodwill_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OpenTaxYear" xlink:to="us-gaap_OpenTaxYear_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeasesTextBlock" xlink:to="us-gaap_LesseeOperatingLeasesTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_TwoThousandFourteenStockIncentivePlanMember" xlink:to="trex_TwoThousandFourteenStockIncentivePlanMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductOrServiceAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationDepletionAndAmortization" xlink:to="us-gaap_DepreciationDepletionAndAmortization_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BaseRateMember" xlink:to="us-gaap_BaseRateMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_PrepaidExpenseAndOtherAssetsCurrentTableTextBlock" xlink:to="trex_PrepaidExpenseAndOtherAssetsCurrentTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchasedDuringPeriodShares" xlink:to="us-gaap_StockRepurchasedDuringPeriodShares_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfGoodwillTable" xlink:to="us-gaap_ScheduleOfGoodwillTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="us-gaap_ClassOfTreasuryStockTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:to="us-gaap_StockholdersEquityNoteDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember" xlink:to="trex_ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentCarryingAmount" xlink:to="us-gaap_DebtInstrumentCarryingAmount_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesIssued" xlink:to="us-gaap_CommonStockSharesIssued_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeStatementAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_NewAccountingStandardsNotYetAdoptedAbstract" xlink:to="trex_NewAccountingStandardsNotYetAdoptedAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_SurfaceFlakingWarrantyReserveMember" xlink:to="trex_SurfaceFlakingWarrantyReserveMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_EquityClassOfTreasuryStockLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountingStandardsUpdateExtensibleList" xlink:to="us-gaap_AccountingStandardsUpdateExtensibleList_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_StockAppreciationRightsMember" xlink:to="trex_StockAppreciationRightsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityExpirationDate1" xlink:to="us-gaap_LineOfCreditFacilityExpirationDate1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_SensitivityChangeInSurfaceFlakingWarrantyReserve" xlink:to="trex_SensitivityChangeInSurfaceFlakingWarrantyReserve_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:to="trex_ScheduleOfCommitmentsAndContingenciesTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryRawMaterials" xlink:to="us-gaap_InventoryRawMaterials_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockCommonShares" xlink:to="us-gaap_TreasuryStockCommonShares_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CoverAbstract" xlink:to="dei_CoverAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_IncomeTaxContingencyLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_RevolvingALoansMember" xlink:to="trex_RevolvingALoansMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxContingencyTable" xlink:to="us-gaap_IncomeTaxContingencyTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrualPayments" xlink:to="us-gaap_StandardProductWarrantyAccrualPayments_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems" xlink:to="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllocatedShareBasedCompensationExpense" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_SegmentReportingAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_SignatureRailingMember" xlink:to="trex_SignatureRailingMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrentAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ProductsAndServicesDomain" xlink:to="srt_ProductsAndServicesDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryGross" xlink:to="us-gaap_InventoryGross_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GuaranteeObligationsByNatureAxis" xlink:to="us-gaap_GuaranteeObligationsByNatureAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_FifthAmendmentAndRestatedAgreementMember" xlink:to="trex_FifthAmendmentAndRestatedAgreementMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementOfCashFlowsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestrictedStockMember" xlink:to="us-gaap_RestrictedStockMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_StatementEquityComponentsAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember" xlink:to="trex_EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:to="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrual" xlink:to="us-gaap_StandardProductWarrantyAccrual_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:to="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_TwoThousandEighteenStockRepurchaseProgramMember" xlink:to="trex_TwoThousandEighteenStockRepurchaseProgramMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_TranscendDeckingMember" xlink:to="trex_TranscendDeckingMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TextBlockAbstract" xlink:to="us-gaap_TextBlockAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LessorOperatingLeaseTermOfContract" xlink:to="us-gaap_LessorOperatingLeaseTermOfContract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentNameDomain" xlink:to="us-gaap_DebtInstrumentNameDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapitalCommonStock" xlink:to="us-gaap_AdditionalPaidInCapitalCommonStock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_ExcessTaxBenefitsFromStockBasedAwards" xlink:to="trex_ExcessTaxBenefitsFromStockBasedAwards_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:to="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember" xlink:to="us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VariableRateDomain" xlink:to="us-gaap_VariableRateDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_SupplementalFinancialInformationOfOperatingLeasesTableTextBlock" xlink:to="trex_SupplementalFinancialInformationOfOperatingLeasesTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_EquityComponentDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeMember" xlink:to="srt_RangeMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities" xlink:to="trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockCommonMember" xlink:to="us-gaap_TreasuryStockCommonMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesLineItems" xlink:to="trex_ScheduleOfCommitmentsAndContingenciesLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:to="us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromLinesOfCredit" xlink:to="us-gaap_ProceedsFromLinesOfCredit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProfitLoss" xlink:to="us-gaap_ProfitLoss_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancingReceivablePortfolioSegmentDomain" xlink:to="us-gaap_FinancingReceivablePortfolioSegmentDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesIssued" xlink:to="us-gaap_PreferredStockSharesIssued_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeasePayments" xlink:to="us-gaap_OperatingLeasePayments_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_PayablesAndAccrualsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ClassOfStockDomain" xlink:to="us-gaap_ClassOfStockDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_ProductWarrantyMember" xlink:to="trex_ProductWarrantyMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestIncomeExpenseNet" xlink:to="us-gaap_InterestIncomeExpenseNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContingentConsiderationByTypeAxis" xlink:to="us-gaap_ContingentConsiderationByTypeAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockParOrStatedValuePerShare" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" xlink:to="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfLinesOfCredit" xlink:to="us-gaap_RepaymentsOfLinesOfCredit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentQuarterlyReport" xlink:to="dei_DocumentQuarterlyReport_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_GoodwillLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeAxis" xlink:to="srt_RangeAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfGoodsAndServicesSold" xlink:to="us-gaap_CostOfGoodsAndServicesSold_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseCost" xlink:to="us-gaap_OperatingLeaseCost_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_LineOfCreditFacilityAdditionalBorrowingCapacity" xlink:to="trex_LineOfCreditFacilityAdditionalBorrowingCapacity_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Assets_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock" xlink:to="trex_DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityAbstract" xlink:to="us-gaap_EquityAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock" xlink:to="us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLossAbstract" xlink:to="us-gaap_NetIncomeLossAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:to="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration" xlink:to="us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InternetDomainNamesMember" xlink:to="us-gaap_InternetDomainNamesMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_GrossAssetAndLiability" xlink:to="trex_GrossAssetAndLiability_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxesPaidNet" xlink:to="us-gaap_IncomeTaxesPaidNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:to="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12bTitle" xlink:to="dei_Security12bTitle_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementOfStockholdersEquityAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:to="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:to="us-gaap_ValuationAllowancesAndReservesTypeAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountingChangesAndErrorCorrectionsAbstract" xlink:to="us-gaap_AccountingChangesAndErrorCorrectionsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_CreditFacilityOneAxis" xlink:to="trex_CreditFacilityOneAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" xlink:to="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCreditFacilityLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockRepurchasedDuringPeriodValue" xlink:to="us-gaap_StockRepurchasedDuringPeriodValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="us-gaap_CreditFacilityDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAccruedLiabilitiesCurrent" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsPayable" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsAbstract" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_NonRule10B51ArrModifiedFlag" xlink:to="trex_NonRule10B51ArrModifiedFlag_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="us-gaap_StockholdersEquityNoteAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_SelectDeckingAndUniversalFasciaMember" xlink:to="trex_SelectDeckingAndUniversalFasciaMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_ResidentialAndCommercialUseMember" xlink:to="trex_ResidentialAndCommercialUseMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription" xlink:to="us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxAuthorityNameAxis" xlink:to="us-gaap_IncomeTaxAuthorityNameAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashFlowOperatingActivitiesLesseeAbstract" xlink:to="us-gaap_CashFlowOperatingActivitiesLesseeAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentDescriptionOfVariableRateBasis" xlink:to="us-gaap_DebtInstrumentDescriptionOfVariableRateBasis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxesReceivable" xlink:to="us-gaap_IncomeTaxesReceivable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherLiabilitiesNoncurrent" xlink:to="us-gaap_OtherLiabilitiesNoncurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_Rule10B51ArrModifiedFlag" xlink:to="trex_Rule10B51ArrModifiedFlag_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_IndustrialRevenueBondsMember" xlink:to="trex_IndustrialRevenueBondsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Goodwill" xlink:to="us-gaap_Goodwill_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted" xlink:to="us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtWeightedAverageInterestRate" xlink:to="us-gaap_DebtWeightedAverageInterestRate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ShareRepurchaseProgramAxis" xlink:to="srt_ShareRepurchaseProgramAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NatureOfOperations" xlink:to="us-gaap_NatureOfOperations_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_LeasesAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AreaOfLand" xlink:to="us-gaap_AreaOfLand_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_SwinglineLetterOfCreditMember" xlink:to="trex_SwinglineLetterOfCreditMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedMarketingCostsCurrent" xlink:to="us-gaap_AccruedMarketingCostsCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable" xlink:to="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_ComponentsOfBasicAndDilutedEarningPerShareTable" xlink:to="trex_ComponentsOfBasicAndDilutedEarningPerShareTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_AgreementDomain" xlink:to="trex_AgreementDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_CreditFacilityOneDomain" xlink:to="trex_CreditFacilityOneDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityExchangeName" xlink:to="dei_SecurityExchangeName_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_StatementClassOfStockAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InvestmentsAllOtherInvestmentsAbstract" xlink:to="us-gaap_InvestmentsAllOtherInvestmentsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MaximumMember" xlink:to="srt_MaximumMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:to="us-gaap_IntangibleAssetsGrossExcludingGoodwill_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpenseCurrent" xlink:to="us-gaap_PrepaidExpenseCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_RevolvingBLoanMember" xlink:to="trex_RevolvingBLoanMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareDiluted" xlink:to="us-gaap_EarningsPerShareDiluted_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_PerformanceBasedRestrictedStockAndPerformanceBasedRestrictedStockUnitsMember" xlink:to="trex_PerformanceBasedRestrictedStockAndPerformanceBasedRestrictedStockUnitsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_Liabilities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFilerCategory" xlink:to="dei_EntityFilerCategory_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancingReceivablePortfolioSegmentAxis" xlink:to="us-gaap_FinancingReceivablePortfolioSegmentAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems" xlink:to="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_CommercialUseMember" xlink:to="trex_CommercialUseMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_CapitalExpendituresInAccountsPayableAndAccruedExpenses" xlink:to="trex_CapitalExpendituresInAccountsPayableAndAccruedExpenses_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductWarrantyLiabilityLineItems" xlink:to="us-gaap_ProductWarrantyLiabilityLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_PaymentsForProceedsFromFinancingCosts" xlink:to="trex_PaymentsForProceedsFromFinancingCosts_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GuaranteeObligationsNatureDomain" xlink:to="us-gaap_GuaranteeObligationsNatureDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_AwardTypeAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_TimeBasedRestrictedStockUnitsMember" xlink:to="trex_TimeBasedRestrictedStockUnitsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_GrossProfit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NumberOfReportableSegments" xlink:to="us-gaap_NumberOfReportableSegments_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentMaturityDate" xlink:to="us-gaap_DebtInstrumentMaturityDate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireIntangibleAssets" xlink:to="us-gaap_PaymentsToAcquireIntangibleAssets_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_WarrantyPeriod" xlink:to="trex_WarrantyPeriod_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_PerformanceBasedRestrictedStockUnitsMember" xlink:to="trex_PerformanceBasedRestrictedStockUnitsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesAuthorized" xlink:to="us-gaap_CommonStockSharesAuthorized_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="srt_ShareRepurchaseProgramDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:to="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_DebtDisclosureAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration" xlink:to="us-gaap_ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AmortizationOfIntangibleAssets" xlink:to="us-gaap_AmortizationOfIntangibleAssets_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" xlink:to="us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_TwoThousandTwentyThreeStockRepurchaseProgramMember" xlink:to="trex_TwoThousandTwentyThreeStockRepurchaseProgramMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplyCommitmentAxis" xlink:to="us-gaap_SupplyCommitmentAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCredit" xlink:to="us-gaap_LineOfCredit_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxDisclosureAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SupplyCommitmentArrangementMember" xlink:to="us-gaap_SupplyCommitmentArrangementMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_TimeBasedRestrictedStockandRestrictedstockUnitsMember" xlink:to="trex_TimeBasedRestrictedStockandRestrictedstockUnitsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract" xlink:to="us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesAuthorized" xlink:to="us-gaap_PreferredStockSharesAuthorized_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SegmentReportingDisclosureTextBlock" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_CreditAgreementSecondAmendmentMember" xlink:to="trex_CreditAgreementSecondAmendmentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryDisclosureAbstract" xlink:to="us-gaap_InventoryDisclosureAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementOfFinancialPositionAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccruedIncomeTaxesCurrent" xlink:to="us-gaap_AccruedIncomeTaxesCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LetterOfCreditMember" xlink:to="us-gaap_LetterOfCreditMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityShellCompany" xlink:to="dei_EntityShellCompany_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_LineOfCreditFacilityTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AssetsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_NumberOfSalesRetailers" xlink:to="trex_NumberOfSalesRetailers_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_AccruedManufacturingExpensesCurrent" xlink:to="trex_AccruedManufacturingExpensesCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SoftwareDevelopmentMember" xlink:to="us-gaap_SoftwareDevelopmentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryDisclosureTextBlock" xlink:to="us-gaap_InventoryDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockValue" xlink:to="us-gaap_PreferredStockValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_SeasonalityDisclosureTextBlock" xlink:to="trex_SeasonalityDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityLenderDomain" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LIFOInventoryAmount" xlink:to="us-gaap_LIFOInventoryAmount_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryNet_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductWarrantyLiabilityTable" xlink:to="us-gaap_ProductWarrantyLiabilityTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryFinishedGoods" xlink:to="us-gaap_InventoryFinishedGoods_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesOutstanding" xlink:to="us-gaap_PreferredStockSharesOutstanding_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ResidentialPortfolioSegmentMember" xlink:to="us-gaap_ResidentialPortfolioSegmentMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesIssued" xlink:to="us-gaap_SharesIssued_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockValue" xlink:to="us-gaap_TreasuryStockValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrualNoncurrent" xlink:to="us-gaap_StandardProductWarrantyAccrualNoncurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember" xlink:to="trex_ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsMember" xlink:to="us-gaap_RetainedEarningsMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ValuationAllowancesAndReservesDomain" xlink:to="us-gaap_ValuationAllowancesAndReservesDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_AccruedCapitalProjectsCurrent" xlink:to="trex_AccruedCapitalProjectsCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MinimumMember" xlink:to="srt_MinimumMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_PercentSensitivityChangeInExpectedSurfaceFlakingClaims" xlink:to="trex_PercentSensitivityChangeInExpectedSurfaceFlakingClaims_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockMember" xlink:to="us-gaap_CommonStockMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_EmployeeStockPurchasePlanMember" xlink:to="trex_EmployeeStockPurchasePlanMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdditionalPaidInCapitalMember" xlink:to="us-gaap_AdditionalPaidInCapitalMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReportingUnitAxis" xlink:to="us-gaap_ReportingUnitAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAssetsNoncurrent" xlink:to="us-gaap_OtherAssetsNoncurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_SignatureRailingAndTranscendCladdingMember" xlink:to="trex_SignatureRailingAndTranscendCladdingMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAssetsCurrent" xlink:to="us-gaap_OtherAssetsCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinancialInstrumentsDisclosureTextBlock" xlink:to="us-gaap_FinancialInstrumentsDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockValue" xlink:to="us-gaap_CommonStockValue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LinesOfCreditCurrent" xlink:to="us-gaap_LinesOfCreditCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockAppreciationRightsSARSMember" xlink:to="us-gaap_StockAppreciationRightsSARSMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContingentConsiderationTypeDomain" xlink:to="us-gaap_ContingentConsiderationTypeDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiability_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingencies" xlink:to="us-gaap_CommitmentsAndContingencies_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" xlink:to="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StandardProductWarrantyAccrualCurrent" xlink:to="us-gaap_StandardProductWarrantyAccrualCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice" xlink:to="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ReportingUnitDomain" xlink:to="us-gaap_ReportingUnitDomain_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" xlink:to="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock" xlink:to="trex_ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:to="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtDisclosureTextBlock" xlink:to="us-gaap_DebtDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TreasuryStockSharesAcquired" xlink:to="us-gaap_TreasuryStockSharesAcquired_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable" xlink:to="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:to="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevolvingCreditFacilityMember" xlink:to="us-gaap_RevolvingCreditFacilityMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryLIFOReserve" xlink:to="us-gaap_InventoryLIFOReserve_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_SupplementalBalanceSheetInformationAbstract" xlink:to="trex_SupplementalBalanceSheetInformationAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InternalRevenueServiceIRSMember" xlink:to="us-gaap_InternalRevenueServiceIRSMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" xlink:to="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_AgreementAxis" xlink:to="trex_AgreementAxis_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_ResidentialUseMember" xlink:to="trex_ResidentialUseMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DeferredTaxAssetsValuationAllowance" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_SurfaceFlakingMember" xlink:to="trex_SurfaceFlakingMember_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableCurrent" xlink:to="us-gaap_AccountsPayableCurrent_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_PrepaidAndOtherCurrentAssetsDisclosureTextBlock" xlink:to="trex_PrepaidAndOtherCurrentAssetsDisclosureTextBlock_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateImmaterialEffect" xlink:to="us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateImmaterialEffect_lbl"/>
          <link:labelArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="trex_PresidentAndChiefExecutiveOfficerMember" xlink:to="trex_PresidentAndChiefExecutiveOfficerMember_lbl"/>
        </link:labelLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/CoverPage" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentType" xlink:label="dei_DocumentType"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2024/dei-2024.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_AmendmentFlag" order="49.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentFiscalYearFocus" order="50.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentType" order="51.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentFiscalPeriodFocus" order="52.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityCentralIndexKey" order="53.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_CurrentFiscalYearEndDate" order="54.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentTransitionReport" order="55.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityRegistrantName" order="56.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentPeriodEndDate" order="57.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityCurrentReportingStatus" order="58.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityInteractiveDataCurrent" order="59.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_TradingSymbol" order="60.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityShellCompany" order="61.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityFilerCategory" order="62.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntitySmallBusiness" order="63.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityEmergingGrowthCompany" order="64.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityCommonStockSharesOutstanding" order="65.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityFileNumber" order="66.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityIncorporationStateCountryCode" order="67.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityTaxIdentificationNumber" order="68.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressAddressLine1" order="69.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressCityOrTown" order="70.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressPostalZipCode" order="71.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_EntityAddressStateOrProvince" order="72.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_CityAreaCode" order="73.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_LocalPhoneNumber" order="74.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_Security12bTitle" order="75.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_SecurityExchangeName" order="76.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_CoverAbstract" xlink:to="dei_DocumentQuarterlyReport" order="77.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestIncomeExpenseNet" xlink:label="us-gaap_InterestIncomeExpenseNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_CostOfGoodsAndServicesSold" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_GrossProfit" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_OperatingIncomeLoss" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_InterestIncomeExpenseNet" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_NetIncomeLoss" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_EarningsPerShareBasic" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_EarningsPerShareDiluted" order="11" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" order="12" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_ComprehensiveIncomeNetOfTax" order="13" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:label="us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsAbstract" xlink:label="us-gaap_AssetsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" xlink:label="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrualCurrent" xlink:label="us-gaap_StandardProductWarrantyAccrualCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LinesOfCreditCurrent" xlink:label="us-gaap_LinesOfCreditCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrualNoncurrent" xlink:label="us-gaap_StandardProductWarrantyAccrualNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntangibleAssetsNetIncludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetIncludingGoodwill"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockValue" xlink:label="us-gaap_TreasuryStockValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccountsPayableCurrent" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_PreferredStockValue" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_AssetsAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_AssetsCurrentAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AccountsReceivableNetCurrent" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_CommonStockValue" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquityAbstract" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_InventoryNet" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_StandardProductWarrantyAccrualCurrent" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_AdditionalPaidInCapitalCommonStock" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LinesOfCreditCurrent" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_StandardProductWarrantyAccrualNoncurrent" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_IntangibleAssetsNetIncludingGoodwill" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrent" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrent" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_OtherLiabilitiesNoncurrent" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_TreasuryStockValue" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_OtherAssetsNoncurrent" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_Liabilities" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquity" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAbstract" xlink:to="us-gaap_Assets" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_CommitmentsAndContingencies" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheetsParenthetical" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockParOrStatedValuePerShare" xlink:label="us-gaap_PreferredStockParOrStatedValuePerShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockParOrStatedValuePerShare" xlink:label="us-gaap_CommonStockParOrStatedValuePerShare"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonShares" xlink:label="us-gaap_TreasuryStockCommonShares"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_PreferredStockParOrStatedValuePerShare" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_PreferredStockSharesAuthorized" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_PreferredStockSharesIssued" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_PreferredStockSharesOutstanding" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockParOrStatedValuePerShare" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesAuthorized" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesIssued" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_CommonStockSharesOutstanding" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_TreasuryStockCommonShares" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesIssued" xlink:label="us-gaap_SharesIssued"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonShares" xlink:label="us-gaap_TreasuryStockCommonShares"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonMember" xlink:label="us-gaap_TreasuryStockCommonMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="us-gaap_TreasuryStockSharesAcquired"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity_12"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesIssued" xlink:label="us-gaap_SharesIssued_13"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonShares" xlink:label="us-gaap_TreasuryStockCommonShares_14"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquity" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_CommonStockMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesIssued" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AdditionalPaidInCapitalMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockCommonShares" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_RetainedEarningsMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_TreasuryStockCommonMember" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockRepurchasedDuringPeriodValue" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockSharesAcquired" order="11" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquity_12" order="12" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesIssued_13" order="13" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockCommonShares_14" order="14" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SupplementalCashFlowInformationAbstract" xlink:label="us-gaap_SupplementalCashFlowInformationAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestPaidNet" xlink:label="us-gaap_InterestPaidNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract" xlink:label="us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_CapitalExpendituresInAccountsPayableAndAccruedExpenses" xlink:label="trex_CapitalExpendituresInAccountsPayableAndAccruedExpenses"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromLinesOfCredit" xlink:label="us-gaap_ProceedsFromLinesOfCredit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquireIntangibleAssets" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesPaidNet" xlink:label="us-gaap_IncomeTaxesPaidNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfLinesOfCredit" xlink:label="us-gaap_RepaymentsOfLinesOfCredit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:label="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="us-gaap_OtherNoncashIncomeExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PaymentsForProceedsFromFinancingCosts" xlink:label="trex_PaymentsForProceedsFromFinancingCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_5"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DepreciationDepletionAndAmortization" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ProfitLoss" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_InterestPaidNet" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract" xlink:to="trex_CapitalExpendituresInAccountsPayableAndAccruedExpenses" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromLinesOfCredit" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquireIntangibleAssets" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplementalCashFlowInformationAbstract" xlink:to="us-gaap_IncomeTaxesPaidNet" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:to="us-gaap_IncreaseDecreaseInInventories" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_RepaymentsOfLinesOfCredit" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ShareBasedCompensation" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_OtherNoncashIncomeExpense" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="trex_PaymentsForProceedsFromFinancingCosts" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_5" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_SupplementalCashFlowInformationAbstract" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd#ecd_InsiderTradingArrLineItems" xlink:label="ecd_InsiderTradingArrLineItems"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_Rule10B51ArrModifiedFlag" xlink:label="trex_Rule10B51ArrModifiedFlag"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_NonRule10B51ArrModifiedFlag" xlink:label="trex_NonRule10B51ArrModifiedFlag"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ecd_InsiderTradingArrLineItems" xlink:to="trex_Rule10B51ArrModifiedFlag" order="14.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="ecd_InsiderTradingArrLineItems" xlink:to="trex_NonRule10B51ArrModifiedFlag" order="15.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/BusinessAndOrganization" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NatureOfOperations" xlink:label="us-gaap_NatureOfOperations"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_NatureOfOperations" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/BasisOfPresentation" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/RecentlyAdoptedAccountingStandards" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingChangesAndErrorCorrectionsAbstract" xlink:label="us-gaap_AccountingChangesAndErrorCorrectionsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingChangesAndErrorCorrectionsAbstract" xlink:to="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/NewAccountingStandardsNotYetAdopted" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_NewAccountingStandardsNotYetAdoptedAbstract" xlink:label="trex_NewAccountingStandardsNotYetAdoptedAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock" xlink:label="trex_DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_NewAccountingStandardsNotYetAdoptedAbstract" xlink:to="trex_DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/Inventories" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="us-gaap_InventoryDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="us-gaap_InventoryDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryDisclosureAbstract" xlink:to="us-gaap_InventoryDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssets" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TextBlockAbstract" xlink:label="us-gaap_TextBlockAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PrepaidAndOtherCurrentAssetsDisclosureTextBlock" xlink:label="trex_PrepaidAndOtherCurrentAssetsDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TextBlockAbstract" xlink:to="trex_PrepaidAndOtherCurrentAssetsDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNet" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilities" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="us-gaap_PayablesAndAccrualsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" xlink:label="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/Debt" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureTextBlock" xlink:label="us-gaap_DebtDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_DebtDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/Leases" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="us-gaap_LeasesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeasesTextBlock" xlink:label="us-gaap_LesseeOperatingLeasesTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_LesseeOperatingLeasesTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/FinancialInstruments" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InvestmentsAllOtherInvestmentsAbstract" xlink:label="us-gaap_InvestmentsAllOtherInvestmentsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancialInstrumentsDisclosureTextBlock" xlink:label="us-gaap_FinancialInstrumentsDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InvestmentsAllOtherInvestmentsAbstract" xlink:to="us-gaap_FinancialInstrumentsDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/StockholdersEquity" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityAbstract" xlink:label="us-gaap_EquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityNoteDisclosureTextBlock" xlink:label="us-gaap_StockholdersEquityNoteDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityAbstract" xlink:to="us-gaap_StockholdersEquityNoteDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/RevenueFromContractsWithCustomers" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensation" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/IncomeTaxes" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureTextBlock" xlink:label="us-gaap_IncomeTaxDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/DisclosureSegmentInformation" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingAbstract" xlink:label="us-gaap_SegmentReportingAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingDisclosureTextBlock" xlink:label="us-gaap_SegmentReportingDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_SegmentReportingDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/Seasonality" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TextBlockAbstract" xlink:label="us-gaap_TextBlockAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SeasonalityDisclosureTextBlock" xlink:label="trex_SeasonalityDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TextBlockAbstract" xlink:to="trex_SeasonalityDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingencies" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/InventoriesTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="us-gaap_InventoryDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryDisclosureAbstract" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TextBlockAbstract" xlink:label="us-gaap_TextBlockAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PrepaidExpenseAndOtherAssetsCurrentTableTextBlock" xlink:label="trex_PrepaidExpenseAndOtherAssetsCurrentTableTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TextBlockAbstract" xlink:to="trex_PrepaidExpenseAndOtherAssetsCurrentTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="us-gaap_PayablesAndAccrualsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock" xlink:label="trex_ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="trex_ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/LeasesTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="us-gaap_LeasesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SupplementalFinancialInformationOfOperatingLeasesTableTextBlock" xlink:label="trex_SupplementalFinancialInformationOfOperatingLeasesTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="trex_SupplementalFinancialInformationOfOperatingLeasesTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/StockholdersEquityTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityAbstract" xlink:label="us-gaap_EquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityAbstract" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityAbstract" xlink:to="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock" xlink:label="us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" xlink:label="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesTables" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/BusinessAndOrganizationAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NumberOfReportableSegments" xlink:label="us-gaap_NumberOfReportableSegments"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_NumberOfReportableSegments" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/DisclosureRecentlyAdoptedAccountingStandardsAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingChangesAndErrorCorrectionsAbstract" xlink:label="us-gaap_AccountingChangesAndErrorCorrectionsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable" xlink:label="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" xlink:label="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted" xlink:label="us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateImmaterialEffect" xlink:label="us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateImmaterialEffect"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingStandardsUpdateExtensibleList" xlink:label="us-gaap_AccountingStandardsUpdateExtensibleList"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AccountingChangesAndErrorCorrectionsAbstract" xlink:to="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" xlink:to="us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable" xlink:to="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" xlink:to="us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateImmaterialEffect" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" xlink:to="us-gaap_AccountingStandardsUpdateExtensibleList" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/InventoriesSummaryOfInventoriesDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryDisclosureAbstract" xlink:label="us-gaap_InventoryDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryFinishedGoods" xlink:label="us-gaap_InventoryFinishedGoods"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryRawMaterials" xlink:label="us-gaap_InventoryRawMaterials"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryGross" xlink:label="us-gaap_InventoryGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryLIFOReserve" xlink:label="us-gaap_InventoryLIFOReserve"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LIFOInventoryAmount" xlink:label="us-gaap_LIFOInventoryAmount"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryDisclosureAbstract" xlink:to="us-gaap_InventoryFinishedGoods" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryDisclosureAbstract" xlink:to="us-gaap_InventoryRawMaterials" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryDisclosureAbstract" xlink:to="us-gaap_InventoryGross" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryDisclosureAbstract" xlink:to="us-gaap_InventoryLIFOReserve" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_InventoryDisclosureAbstract" xlink:to="us-gaap_LIFOInventoryAmount" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsSummaryOfPrepaidExpensesAndOtherAssetsDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsAbstract" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="us-gaap_PrepaidExpenseCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesReceivable" xlink:label="us-gaap_IncomeTaxesReceivable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsCurrent" xlink:label="us-gaap_OtherAssetsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsAbstract" xlink:to="us-gaap_PrepaidExpenseCurrent" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsAbstract" xlink:to="us-gaap_IncomeTaxesReceivable" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsAbstract" xlink:to="us-gaap_OtherAssetsCurrent" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsAbstract" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfGoodwillTable" xlink:label="us-gaap_ScheduleOfGoodwillTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablePortfolioSegmentDomain" xlink:label="us-gaap_FinancingReceivablePortfolioSegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResidentialPortfolioSegmentMember" xlink:label="us-gaap_ResidentialPortfolioSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InternetDomainNamesMember" xlink:label="us-gaap_InternetDomainNamesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillLineItems" xlink:label="us-gaap_GoodwillLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablePortfolioSegmentAxis" xlink:label="us-gaap_FinancingReceivablePortfolioSegmentAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReportingUnitAxis" xlink:label="us-gaap_ReportingUnitAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReportingUnitDomain" xlink:label="us-gaap_ReportingUnitDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:label="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SoftwareDevelopmentMember" xlink:label="us-gaap_SoftwareDevelopmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfGoodwillTable" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FinancingReceivablePortfolioSegmentDomain" xlink:to="us-gaap_ResidentialPortfolioSegmentMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_InternetDomainNamesMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_Goodwill" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FinancingReceivablePortfolioSegmentAxis" xlink:to="us-gaap_FinancingReceivablePortfolioSegmentDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ReportingUnitAxis" xlink:to="us-gaap_ReportingUnitDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract" xlink:to="us-gaap_ScheduleOfGoodwillTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfGoodwillTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_SoftwareDevelopmentMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfGoodwillTable" xlink:to="us-gaap_FinancingReceivablePortfolioSegmentAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_AmortizationOfIntangibleAssets" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfGoodwillTable" xlink:to="us-gaap_ReportingUnitAxis" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_IntangibleAssetsGrossExcludingGoodwill" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfGoodwillTable" xlink:to="us-gaap_GoodwillLineItems" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PayablesAndAccrualsAbstract" xlink:label="us-gaap_PayablesAndAccrualsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedMarketingCostsCurrent" xlink:label="us-gaap_AccruedMarketingCostsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="us-gaap_AccruedIncomeTaxesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_AccruedCapitalProjectsCurrent" xlink:label="trex_AccruedCapitalProjectsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_AccruedManufacturingExpensesCurrent" xlink:label="trex_AccruedManufacturingExpensesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" xlink:label="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" xlink:label="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_AccruedMarketingCostsCurrent" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_AccruedIncomeTaxesCurrent" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="trex_AccruedCapitalProjectsCurrent" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="trex_AccruedManufacturingExpensesCurrent" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PayablesAndAccrualsAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="us-gaap_LineOfCreditFacilityAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BaseRateMember" xlink:label="us-gaap_BaseRateMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_CreditFacilityOneAxis" xlink:label="trex_CreditFacilityOneAxis"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_CreditFacilityOneDomain" xlink:label="trex_CreditFacilityOneDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="us-gaap_LineOfCreditFacilityLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="us-gaap_RevolvingCreditFacilityMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_AgreementDomain" xlink:label="trex_AgreementDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_FifthAmendmentAndRestatedAgreementMember" xlink:label="trex_FifthAmendmentAndRestatedAgreementMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LetterOfCreditMember" xlink:label="us-gaap_LetterOfCreditMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtDisclosureAbstract" xlink:label="us-gaap_DebtDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="us-gaap_LineOfCreditFacilityTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_AgreementAxis" xlink:label="trex_AgreementAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember" xlink:label="us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_RevolvingALoansMember" xlink:label="trex_RevolvingALoansMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_CreditAgreementSecondAmendmentMember" xlink:label="trex_CreditAgreementSecondAmendmentMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SwinglineLetterOfCreditMember" xlink:label="trex_SwinglineLetterOfCreditMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentAxis" xlink:label="us-gaap_DebtInstrumentAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="us-gaap_DebtInstrumentNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityExpirationDate1" xlink:label="us-gaap_LineOfCreditFacilityExpirationDate1"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_RevolvingBLoanMember" xlink:label="trex_RevolvingBLoanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LinesOfCreditCurrent" xlink:label="us-gaap_LinesOfCreditCurrent"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_LineOfCreditFacilityAdditionalBorrowingCapacity" xlink:label="trex_LineOfCreditFacilityAdditionalBorrowingCapacity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentDescriptionOfVariableRateBasis" xlink:label="us-gaap_DebtInstrumentDescriptionOfVariableRateBasis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="us-gaap_DebtInstrumentMaturityDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtWeightedAverageInterestRate" xlink:label="us-gaap_DebtWeightedAverageInterestRate"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateDomain" xlink:to="us-gaap_BaseRateMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_CreditFacilityOneAxis" xlink:to="trex_CreditFacilityOneDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="us-gaap_RevolvingCreditFacilityMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_AgreementDomain" xlink:to="trex_FifthAmendmentAndRestatedAgreementMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_CreditFacilityOneDomain" xlink:to="us-gaap_LetterOfCreditMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtDisclosureAbstract" xlink:to="us-gaap_LineOfCreditFacilityTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_CreditFacilityAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_AgreementAxis" xlink:to="trex_AgreementDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateDomain" xlink:to="us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="trex_RevolvingALoansMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_AgreementDomain" xlink:to="trex_CreditAgreementSecondAmendmentMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_CreditFacilityOneDomain" xlink:to="trex_SwinglineLetterOfCreditMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_DebtInstrumentAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DebtInstrumentAxis" xlink:to="us-gaap_DebtInstrumentNameDomain" order="2.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCreditFacilityExpirationDate1" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="trex_RevolvingBLoanMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_VariableRateAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_LineOfCreditFacilityAxis" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LinesOfCreditCurrent" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="trex_AgreementAxis" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="trex_LineOfCreditFacilityAdditionalBorrowingCapacity" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="trex_CreditFacilityOneAxis" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentDescriptionOfVariableRateBasis" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="srt_RangeAxis" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCredit" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_LineOfCreditFacilityLineItems" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentMaturityDate" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage" order="9" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtWeightedAverageInterestRate" order="10" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/LeasesAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="us-gaap_LeasesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseCost" xlink:label="us-gaap_OperatingLeaseCost"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LessorOperatingLeaseTermOfContract" xlink:label="us-gaap_LessorOperatingLeaseTermOfContract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_StatementTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseCost" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementClassOfStockAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LessorOperatingLeaseTermOfContract" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain" order="2.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashFlowOperatingActivitiesLesseeAbstract" xlink:label="us-gaap_CashFlowOperatingActivitiesLesseeAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsAndLiabilitiesLesseeAbstract" xlink:label="us-gaap_AssetsAndLiabilitiesLesseeAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities" xlink:label="trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeasePayments" xlink:label="us-gaap_OperatingLeasePayments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="us-gaap_LeasesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SupplementalBalanceSheetInformationAbstract" xlink:label="trex_SupplementalBalanceSheetInformationAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CashFlowOperatingActivitiesLesseeAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAndLiabilitiesLesseeAbstract" xlink:to="trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CashFlowOperatingActivitiesLesseeAbstract" xlink:to="us-gaap_OperatingLeasePayments" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_StatementTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementClassOfStockAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_SupplementalBalanceSheetInformationAbstract" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="trex_SupplementalBalanceSheetInformationAbstract" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsAndLiabilitiesLesseeAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CashFlowOperatingActivitiesLesseeAbstract" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AssetsAndLiabilitiesLesseeAbstract" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain" order="2.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiability" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:label="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LeasesAbstract" xlink:label="us-gaap_LeasesAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeasesAbstract" xlink:to="us-gaap_StatementTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementClassOfStockAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain" order="2.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_OperatingLeaseLiability" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="us-gaap_ClassOfTreasuryStockTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramAxis" xlink:label="srt_ShareRepurchaseProgramAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityClassOfTreasuryStockLineItems" xlink:label="us-gaap_EquityClassOfTreasuryStockLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="us-gaap_TreasuryStockSharesAcquired"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityAbstract" xlink:label="us-gaap_EquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramDomain" xlink:label="srt_ShareRepurchaseProgramDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_TwoThousandEighteenStockRepurchaseProgramMember" xlink:label="trex_TwoThousandEighteenStockRepurchaseProgramMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_TwoThousandTwentyThreeStockRepurchaseProgramMember" xlink:label="trex_TwoThousandTwentyThreeStockRepurchaseProgramMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="srt_ShareRepurchaseProgramAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_TreasuryStockSharesAcquired" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityAbstract" xlink:to="us-gaap_ClassOfTreasuryStockTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ShareRepurchaseProgramAxis" xlink:to="srt_ShareRepurchaseProgramDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="trex_TwoThousandEighteenStockRepurchaseProgramMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="us-gaap_StatementEquityComponentsAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_StockRepurchasedDuringPeriodShares" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="trex_TwoThousandTwentyThreeStockRepurchaseProgramMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="us-gaap_EquityClassOfTreasuryStockLineItems" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLossAbstract" xlink:label="us-gaap_NetIncomeLossAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquityNoteAbstract" xlink:label="us-gaap_StockholdersEquityNoteAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ComponentsOfBasicAndDilutedEarningPerShareTable" xlink:label="trex_ComponentsOfBasicAndDilutedEarningPerShareTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems" xlink:label="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_StockAppreciationRightsMember" xlink:label="trex_StockAppreciationRightsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetIncomeLossAbstract" xlink:to="us-gaap_NetIncomeLoss" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityNoteAbstract" xlink:to="trex_ComponentsOfBasicAndDilutedEarningPerShareTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ComponentsOfBasicAndDilutedEarningPerShareTable" xlink:to="us-gaap_AwardTypeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems" xlink:to="us-gaap_NetIncomeLossAbstract" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ComponentsOfBasicAndDilutedEarningPerShareTable" xlink:to="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems" xlink:to="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="2.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="trex_StockAppreciationRightsMember" order="3.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems" xlink:to="us-gaap_EarningsPerShareBasic" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockMember" order="4.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems" xlink:to="us-gaap_EarningsPerShareDiluted" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockAppreciationRightsSARSMember" xlink:label="us-gaap_StockAppreciationRightsSARSMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityAbstract" xlink:label="us-gaap_EquityAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:to="us-gaap_StockAppreciationRightsSARSMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_EquityAbstract" xlink:to="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:to="us-gaap_RestrictedStockMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/RevenueFromContractsWithCustomersAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerAbstract" xlink:label="us-gaap_RevenueFromContractWithCustomerAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_TwoThousandFourteenStockIncentivePlanMember" xlink:label="trex_TwoThousandFourteenStockIncentivePlanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration" xlink:label="us-gaap_ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockAppreciationRightsSARSMember" xlink:label="us-gaap_StockAppreciationRightsSARSMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameDomain" xlink:to="trex_TwoThousandFourteenStockIncentivePlanMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_AwardTypeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_PlanNameAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="2.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_StockAppreciationRightsSARSMember" order="3.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationGrantsDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice" xlink:label="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_TimeBasedRestrictedStockUnitsMember" xlink:label="trex_TimeBasedRestrictedStockUnitsMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PerformanceBasedRestrictedStockUnitsMember" xlink:label="trex_PerformanceBasedRestrictedStockUnitsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockAppreciationRightsSARSMember" xlink:label="us-gaap_StockAppreciationRightsSARSMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_StatementTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="2.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="trex_TimeBasedRestrictedStockUnitsMember" order="3.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="trex_PerformanceBasedRestrictedStockUnitsMember" order="4.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_StockAppreciationRightsSARSMember" order="5.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/DisclosureStockbasedCompensationSummaryOfStockbasedCompensationExpensesParentheticalDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PerformanceBasedRestrictedStockAndPerformanceBasedRestrictedStockUnitsMember" xlink:label="trex_PerformanceBasedRestrictedStockAndPerformanceBasedRestrictedStockUnitsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockAppreciationRightsSARSMember" xlink:label="us-gaap_StockAppreciationRightsSARSMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PerformanceBasedRestrictedStockAdjustmentMember" xlink:label="trex_PerformanceBasedRestrictedStockAdjustmentMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_AwardTypeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="2.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="trex_PerformanceBasedRestrictedStockAndPerformanceBasedRestrictedStockUnitsMember" order="3.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_StockAppreciationRightsSARSMember" order="4.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="trex_PerformanceBasedRestrictedStockAdjustmentMember" order="5.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfAssumptionsUsedToEstimateFairValueOfEachSarDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems" xlink:label="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable" xlink:label="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockAppreciationRightsSARSMember" xlink:label="us-gaap_StockAppreciationRightsSARSMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable" xlink:to="us-gaap_AwardTypeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable" xlink:to="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="2.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_StockAppreciationRightsSARSMember" order="3.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationExpensesDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockAppreciationRightsSARSMember" xlink:label="us-gaap_StockAppreciationRightsSARSMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_TimeBasedRestrictedStockandRestrictedstockUnitsMember" xlink:label="trex_TimeBasedRestrictedStockandRestrictedstockUnitsMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PerformanceBasedRestrictedStockAndrestrictedStockunitsMember" xlink:label="trex_PerformanceBasedRestrictedStockAndrestrictedStockunitsMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_EmployeeStockPurchasePlanMember" xlink:label="trex_EmployeeStockPurchasePlanMember"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_AwardTypeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" order="2.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_StockAppreciationRightsSARSMember" order="3.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="trex_TimeBasedRestrictedStockandRestrictedstockUnitsMember" order="4.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="trex_PerformanceBasedRestrictedStockAndrestrictedStockunitsMember" order="5.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="trex_EmployeeStockPurchasePlanMember" order="6.0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/IncomeTaxesAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="us-gaap_IncomeTaxAuthorityNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InternalRevenueServiceIRSMember" xlink:label="us-gaap_InternalRevenueServiceIRSMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxContingencyLineItems" xlink:label="us-gaap_IncomeTaxContingencyLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxContingencyTable" xlink:label="us-gaap_IncomeTaxContingencyTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="us-gaap_IncomeTaxAuthorityNameAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxDisclosureAbstract" xlink:label="us-gaap_IncomeTaxDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OpenTaxYear" xlink:label="us-gaap_OpenTaxYear"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ExcessTaxBenefitsFromStockBasedAwards" xlink:label="trex_ExcessTaxBenefitsFromStockBasedAwards"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxAuthorityNameDomain" xlink:to="us-gaap_InternalRevenueServiceIRSMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxContingencyTable" xlink:to="us-gaap_IncomeTaxAuthorityNameAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxAuthorityNameAxis" xlink:to="us-gaap_IncomeTaxAuthorityNameDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxDisclosureAbstract" xlink:to="us-gaap_IncomeTaxContingencyTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_IncomeTaxExpenseBenefit" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxContingencyTable" xlink:to="us-gaap_IncomeTaxContingencyLineItems" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_OpenTaxYear" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="trex_ExcessTaxBenefitsFromStockBasedAwards" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/DisclosureSegmentInformationAdditionalInformationDetails" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingAbstract" xlink:label="us-gaap_SegmentReportingAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NumberOfReportableSegments" xlink:label="us-gaap_NumberOfReportableSegments"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_NumberOfSalesRetailers" xlink:label="trex_NumberOfSalesRetailers"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration" xlink:label="us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription" xlink:label="us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_NumberOfReportableSegments" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="trex_NumberOfSalesRetailers" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SegmentReportingAbstract" xlink:to="us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:label="trex_ScheduleOfCommitmentsAndContingenciesTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" xlink:label="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SignatureRailingAndTranscendCladdingMember" xlink:label="trex_SignatureRailingAndTranscendCladdingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GuaranteeObligationsByNatureAxis" xlink:label="us-gaap_GuaranteeObligationsByNatureAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GuaranteeObligationsNatureDomain" xlink:label="us-gaap_GuaranteeObligationsNatureDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ScheduleOfCommitmentsAndContingenciesLineItems" xlink:label="trex_ScheduleOfCommitmentsAndContingenciesLineItems"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_WarrantyPeriod" xlink:label="trex_WarrantyPeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContingentConsiderationByTypeAxis" xlink:label="us-gaap_ContingentConsiderationByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContingentConsiderationTypeDomain" xlink:label="us-gaap_ContingentConsiderationTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:label="us-gaap_ValuationAllowancesAndReservesTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="us-gaap_ValuationAllowancesAndReservesDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" xlink:label="us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablePortfolioSegmentAxis" xlink:label="us-gaap_FinancingReceivablePortfolioSegmentAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablePortfolioSegmentDomain" xlink:label="us-gaap_FinancingReceivablePortfolioSegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ResidentialUseMember" xlink:label="trex_ResidentialUseMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SupplyCommitmentAxis" xlink:label="us-gaap_SupplyCommitmentAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SupplyCommitmentArrangementMember" xlink:label="us-gaap_SupplyCommitmentArrangementMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember" xlink:label="trex_ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SurfaceFlakingWarrantyReserveMember" xlink:label="trex_SurfaceFlakingWarrantyReserveMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_IndustrialRevenueBondsMember" xlink:label="trex_IndustrialRevenueBondsMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_TranscendDeckingMember" xlink:label="trex_TranscendDeckingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_CommercialUseMember" xlink:label="trex_CommercialUseMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember" xlink:label="trex_ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SelectDeckingAndUniversalFasciaMember" xlink:label="trex_SelectDeckingAndUniversalFasciaMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_GrossAssetAndLiability" xlink:label="trex_GrossAssetAndLiability"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ResidentialAndCommercialUseMember" xlink:label="trex_ResidentialAndCommercialUseMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember" xlink:label="trex_EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PercentSensitivityChangeInExpectedSurfaceFlakingClaims" xlink:label="trex_PercentSensitivityChangeInExpectedSurfaceFlakingClaims"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SignatureRailingMember" xlink:label="trex_SignatureRailingMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SensitivityChangeInSurfaceFlakingWarrantyReserve" xlink:label="trex_SensitivityChangeInSurfaceFlakingWarrantyReserve"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AreaOfLand" xlink:label="us-gaap_AreaOfLand"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:to="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain" xlink:to="trex_SignatureRailingAndTranscendCladdingMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GuaranteeObligationsByNatureAxis" xlink:to="us-gaap_GuaranteeObligationsNatureDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesLineItems" xlink:to="trex_WarrantyPeriod" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContingentConsiderationByTypeAxis" xlink:to="us-gaap_ContingentConsiderationTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:to="us-gaap_ValuationAllowancesAndReservesDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" xlink:to="us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_FinancingReceivablePortfolioSegmentAxis" xlink:to="us-gaap_FinancingReceivablePortfolioSegmentDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GuaranteeObligationsNatureDomain" xlink:to="trex_ResidentialUseMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplyCommitmentAxis" xlink:to="us-gaap_SupplyCommitmentArrangementMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplyCommitmentArrangementMember" xlink:to="trex_ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="trex_ScheduleOfCommitmentsAndContingenciesTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ValuationAllowancesAndReservesDomain" xlink:to="trex_SurfaceFlakingWarrantyReserveMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContingentConsiderationTypeDomain" xlink:to="trex_IndustrialRevenueBondsMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:to="srt_ProductOrServiceAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain" xlink:to="trex_TranscendDeckingMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesLineItems" xlink:to="us-gaap_DebtInstrumentCarryingAmount" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GuaranteeObligationsNatureDomain" xlink:to="trex_CommercialUseMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_SupplyCommitmentArrangementMember" xlink:to="trex_ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:to="us-gaap_GuaranteeObligationsByNatureAxis" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain" xlink:to="trex_SelectDeckingAndUniversalFasciaMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesLineItems" xlink:to="trex_GrossAssetAndLiability" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_GuaranteeObligationsNatureDomain" xlink:to="trex_ResidentialAndCommercialUseMember" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:to="us-gaap_ValuationAllowancesAndReservesTypeAxis" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain" xlink:to="trex_EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesLineItems" xlink:to="trex_PercentSensitivityChangeInExpectedSurfaceFlakingClaims" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:to="srt_RangeAxis" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_ProductsAndServicesDomain" xlink:to="trex_SignatureRailingMember" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesLineItems" xlink:to="trex_SensitivityChangeInSurfaceFlakingWarrantyReserve" order="4" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:to="us-gaap_ContingentConsiderationByTypeAxis" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesLineItems" xlink:to="us-gaap_AreaOfLand" order="5" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:to="us-gaap_SupplyCommitmentAxis" order="6" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:to="us-gaap_FinancingReceivablePortfolioSegmentAxis" order="7" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/label"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:to="trex_ScheduleOfCommitmentsAndContingenciesLineItems" order="8" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
        </link:presentationLink>
        <link:presentationLink xlink:role="http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail" xlink:title="presentationLink" xlink:type="extended">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContingentConsiderationByTypeAxis" xlink:label="us-gaap_ContingentConsiderationByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContingentConsiderationTypeDomain" xlink:label="us-gaap_ContingentConsiderationTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:label="us-gaap_ValuationAllowancesAndReservesTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="us-gaap_ValuationAllowancesAndReservesDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyLiabilityLineItems" xlink:label="us-gaap_ProductWarrantyLiabilityLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="us-gaap_StandardProductWarrantyAccrual"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyLiabilityTable" xlink:label="us-gaap_ProductWarrantyLiabilityTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SurfaceFlakingWarrantyReserveMember" xlink:label="trex_SurfaceFlakingWarrantyReserveMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ProductWarrantyMember" xlink:label="trex_ProductWarrantyMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:label="us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SurfaceFlakingMember" xlink:label="trex_SurfaceFlakingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrualPayments" xlink:label="us-gaap_StandardProductWarrantyAccrualPayments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="us-gaap_StandardProductWarrantyAccrual_3"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContingentConsiderationByTypeAxis" xlink:to="us-gaap_ContingentConsiderationTypeDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:to="us-gaap_ValuationAllowancesAndReservesDomain" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ProductWarrantyLiabilityLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrual" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ProductWarrantyLiabilityTable" xlink:to="us-gaap_ContingentConsiderationByTypeAxis" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="us-gaap_ProductWarrantyLiabilityTable" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ValuationAllowancesAndReservesDomain" xlink:to="trex_SurfaceFlakingWarrantyReserveMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContingentConsiderationTypeDomain" xlink:to="trex_ProductWarrantyMember" order="0" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ProductWarrantyLiabilityLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ProductWarrantyLiabilityTable" xlink:to="us-gaap_ValuationAllowancesAndReservesTypeAxis" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ContingentConsiderationTypeDomain" xlink:to="trex_SurfaceFlakingMember" order="1" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ProductWarrantyLiabilityLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrualPayments" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ProductWarrantyLiabilityTable" xlink:to="us-gaap_ProductWarrantyLiabilityLineItems" order="2" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
          <link:presentationArc xlink:type="arc" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ProductWarrantyLiabilityLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrual_3" order="3" priority="2" use="optional" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
        </link:presentationLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesIssued" xlink:label="us-gaap_SharesIssued"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalMember" xlink:label="us-gaap_AdditionalPaidInCapitalMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonShares" xlink:label="us-gaap_TreasuryStockCommonShares"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockCommonMember" xlink:label="us-gaap_TreasuryStockCommonMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockRepurchasedDuringPeriodValue" xlink:label="us-gaap_StockRepurchasedDuringPeriodValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="us-gaap_TreasuryStockSharesAcquired"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquity" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_CommonStockMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesIssued" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_AdditionalPaidInCapitalMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockCommonShares" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_RetainedEarningsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_TreasuryStockCommonMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="8" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="9" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="10" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockRepurchasedDuringPeriodValue" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="11" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TreasuryStockSharesAcquired" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/DisclosureRecentlyAdoptedAccountingStandardsAdditionalInformationDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" xlink:label="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable" xlink:label="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted" xlink:label="us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateImmaterialEffect" xlink:label="us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateImmaterialEffect"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingStandardsUpdateExtensibleList" xlink:label="us-gaap_AccountingStandardsUpdateExtensibleList"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" xlink:to="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" xlink:to="us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" xlink:to="us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateImmaterialEffect" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems" xlink:to="us-gaap_AccountingStandardsUpdateExtensibleList" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GoodwillLineItems" xlink:label="us-gaap_GoodwillLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfGoodwillTable" xlink:label="us-gaap_ScheduleOfGoodwillTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablePortfolioSegmentDomain" xlink:label="us-gaap_FinancingReceivablePortfolioSegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ResidentialPortfolioSegmentMember" xlink:label="us-gaap_ResidentialPortfolioSegmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InternetDomainNamesMember" xlink:label="us-gaap_InternetDomainNamesMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Goodwill" xlink:label="us-gaap_Goodwill"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:label="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablePortfolioSegmentAxis" xlink:label="us-gaap_FinancingReceivablePortfolioSegmentAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablePortfolioSegmentDomain" xlink:label="us-gaap_FinancingReceivablePortfolioSegmentDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReportingUnitAxis" xlink:label="us-gaap_ReportingUnitAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReportingUnitDomain" xlink:label="us-gaap_ReportingUnitDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ReportingUnitDomain" xlink:label="us-gaap_ReportingUnitDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SoftwareDevelopmentMember" xlink:label="us-gaap_SoftwareDevelopmentMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife" xlink:label="us-gaap_FiniteLivedIntangibleAssetUsefulLife"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntangibleAssetsGrossExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsGrossExcludingGoodwill"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:label="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_ScheduleOfGoodwillTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfGoodwillTable" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FinancingReceivablePortfolioSegmentDomain" xlink:to="us-gaap_ResidentialPortfolioSegmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_InternetDomainNamesMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_Goodwill" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis" xlink:to="us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_FinancingReceivablePortfolioSegmentAxis" xlink:to="us-gaap_FinancingReceivablePortfolioSegmentDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_FinancingReceivablePortfolioSegmentAxis" xlink:to="us-gaap_FinancingReceivablePortfolioSegmentDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ReportingUnitAxis" xlink:to="us-gaap_ReportingUnitDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ReportingUnitAxis" xlink:to="us-gaap_ReportingUnitDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfGoodwillTable" xlink:to="us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain" xlink:to="us-gaap_SoftwareDevelopmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetUsefulLife" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfGoodwillTable" xlink:to="us-gaap_FinancingReceivablePortfolioSegmentAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_AmortizationOfIntangibleAssets" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfGoodwillTable" xlink:to="us-gaap_ReportingUnitAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_IntangibleAssetsGrossExcludingGoodwill" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_GoodwillLineItems" xlink:to="us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLineItems" xlink:label="us-gaap_LineOfCreditFacilityLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityTable" xlink:label="us-gaap_LineOfCreditFacilityTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentAxis" xlink:label="us-gaap_DebtInstrumentAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="us-gaap_DebtInstrumentNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentNameDomain" xlink:label="us-gaap_DebtInstrumentNameDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="us-gaap_LineOfCreditFacilityAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BaseRateMember" xlink:label="us-gaap_BaseRateMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember_default"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_CreditFacilityOneAxis" xlink:label="trex_CreditFacilityOneAxis"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_CreditFacilityOneDomain" xlink:label="trex_CreditFacilityOneDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_CreditFacilityOneDomain" xlink:label="trex_CreditFacilityOneDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="us-gaap_RevolvingCreditFacilityMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_AgreementDomain" xlink:label="trex_AgreementDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_FifthAmendmentAndRestatedAgreementMember" xlink:label="trex_FifthAmendmentAndRestatedAgreementMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LetterOfCreditMember" xlink:label="us-gaap_LetterOfCreditMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_AgreementAxis" xlink:label="trex_AgreementAxis"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_AgreementDomain" xlink:label="trex_AgreementDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember" xlink:label="us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_RevolvingALoansMember" xlink:label="trex_RevolvingALoansMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_CreditAgreementSecondAmendmentMember" xlink:label="trex_CreditAgreementSecondAmendmentMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SwinglineLetterOfCreditMember" xlink:label="trex_SwinglineLetterOfCreditMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCreditFacilityExpirationDate1" xlink:label="us-gaap_LineOfCreditFacilityExpirationDate1"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_RevolvingBLoanMember" xlink:label="trex_RevolvingBLoanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LinesOfCreditCurrent" xlink:label="us-gaap_LinesOfCreditCurrent"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_LineOfCreditFacilityAdditionalBorrowingCapacity" xlink:label="trex_LineOfCreditFacilityAdditionalBorrowingCapacity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentDescriptionOfVariableRateBasis" xlink:label="us-gaap_DebtInstrumentDescriptionOfVariableRateBasis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="us-gaap_DebtInstrumentMaturityDate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtWeightedAverageInterestRate" xlink:label="us-gaap_DebtWeightedAverageInterestRate"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCreditFacilityTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_DebtInstrumentAxis" xlink:to="us-gaap_DebtInstrumentNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_DebtInstrumentAxis" xlink:to="us-gaap_DebtInstrumentNameDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_VariableRateDomain" xlink:to="us-gaap_BaseRateMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="trex_CreditFacilityOneAxis" xlink:to="trex_CreditFacilityOneDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="trex_CreditFacilityOneAxis" xlink:to="trex_CreditFacilityOneDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="us-gaap_RevolvingCreditFacilityMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_AgreementDomain" xlink:to="trex_FifthAmendmentAndRestatedAgreementMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_CreditFacilityOneDomain" xlink:to="us-gaap_LetterOfCreditMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_CreditFacilityAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="trex_AgreementAxis" xlink:to="trex_AgreementDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="trex_AgreementAxis" xlink:to="trex_AgreementDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_VariableRateDomain" xlink:to="us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="trex_RevolvingALoansMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_AgreementDomain" xlink:to="trex_CreditAgreementSecondAmendmentMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_CreditFacilityOneDomain" xlink:to="trex_SwinglineLetterOfCreditMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_DebtInstrumentAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCreditFacilityExpirationDate1" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="trex_RevolvingBLoanMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_VariableRateAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="us-gaap_LineOfCreditFacilityAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LinesOfCreditCurrent" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="trex_AgreementAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="trex_LineOfCreditFacilityAdditionalBorrowingCapacity" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="trex_CreditFacilityOneAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentDescriptionOfVariableRateBasis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_LineOfCreditFacilityTable" xlink:to="srt_RangeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_LineOfCredit" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="8" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentMaturityDate" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="9" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="10" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLineItems" xlink:to="us-gaap_DebtWeightedAverageInterestRate" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/LeasesAdditionalInformationDetail">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MinimumMember" xlink:label="srt_MinimumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseCost" xlink:label="us-gaap_OperatingLeaseCost"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LessorOperatingLeaseTermOfContract" xlink:label="us-gaap_LessorOperatingLeaseTermOfContract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MinimumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseCost" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementClassOfStockAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LessorOperatingLeaseTermOfContract" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashFlowOperatingActivitiesLesseeAbstract" xlink:label="us-gaap_CashFlowOperatingActivitiesLesseeAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsAndLiabilitiesLesseeAbstract" xlink:label="us-gaap_AssetsAndLiabilitiesLesseeAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities" xlink:label="trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeasePayments" xlink:label="us-gaap_OperatingLeasePayments"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SupplementalBalanceSheetInformationAbstract" xlink:label="trex_SupplementalBalanceSheetInformationAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CashFlowOperatingActivitiesLesseeAbstract" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsAndLiabilitiesLesseeAbstract" xlink:to="trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CashFlowOperatingActivitiesLesseeAbstract" xlink:to="us-gaap_OperatingLeasePayments" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementClassOfStockAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_SupplementalBalanceSheetInformationAbstract" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="trex_SupplementalBalanceSheetInformationAbstract" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsAndLiabilitiesLesseeAbstract" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CashFlowOperatingActivitiesLesseeAbstract" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AssetsAndLiabilitiesLesseeAbstract" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiability" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:label="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfStockDomain" xlink:label="us-gaap_ClassOfStockDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_ClassOfStockDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementClassOfStockAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="8" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract" xlink:to="us-gaap_OperatingLeaseLiability" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAdditionalInformationDetail">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityClassOfTreasuryStockLineItems" xlink:label="us-gaap_EquityClassOfTreasuryStockLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ClassOfTreasuryStockTable" xlink:label="us-gaap_ClassOfTreasuryStockTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramAxis" xlink:label="srt_ShareRepurchaseProgramAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockSharesAcquired" xlink:label="us-gaap_TreasuryStockSharesAcquired"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramDomain" xlink:label="srt_ShareRepurchaseProgramDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ShareRepurchaseProgramDomain" xlink:label="srt_ShareRepurchaseProgramDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_TwoThousandEighteenStockRepurchaseProgramMember" xlink:label="trex_TwoThousandEighteenStockRepurchaseProgramMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockRepurchasedDuringPeriodShares" xlink:label="us-gaap_StockRepurchasedDuringPeriodShares"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_TwoThousandTwentyThreeStockRepurchaseProgramMember" xlink:label="trex_TwoThousandTwentyThreeStockRepurchaseProgramMember"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_ClassOfTreasuryStockTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="srt_ShareRepurchaseProgramAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_TreasuryStockSharesAcquired" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ShareRepurchaseProgramAxis" xlink:to="srt_ShareRepurchaseProgramDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_ShareRepurchaseProgramAxis" xlink:to="srt_ShareRepurchaseProgramDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="trex_TwoThousandEighteenStockRepurchaseProgramMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ClassOfTreasuryStockTable" xlink:to="us-gaap_StatementEquityComponentsAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityClassOfTreasuryStockLineItems" xlink:to="us-gaap_StockRepurchasedDuringPeriodShares" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ShareRepurchaseProgramDomain" xlink:to="trex_TwoThousandTwentyThreeStockRepurchaseProgramMember" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail">
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems" xlink:label="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ComponentsOfBasicAndDilutedEarningPerShareTable" xlink:label="trex_ComponentsOfBasicAndDilutedEarningPerShareTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xlink:label="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" xlink:label="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_StockAppreciationRightsMember" xlink:label="trex_StockAppreciationRightsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLossAbstract" xlink:label="us-gaap_NetIncomeLossAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:label="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EarningsPerShareDiluted" xlink:label="us-gaap_EarningsPerShareDiluted"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems" xlink:to="trex_ComponentsOfBasicAndDilutedEarningPerShareTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xlink:to="us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="trex_StockAppreciationRightsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetIncomeLossAbstract" xlink:to="us-gaap_NetIncomeLoss" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="trex_ComponentsOfBasicAndDilutedEarningPerShareTable" xlink:to="us-gaap_AwardTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems" xlink:to="us-gaap_NetIncomeLossAbstract" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" xlink:to="us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems" xlink:to="us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems" xlink:to="us-gaap_EarningsPerShareBasic" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems" xlink:to="us-gaap_EarningsPerShareDiluted" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetail">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:label="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockAppreciationRightsSARSMember" xlink:label="us-gaap_StockAppreciationRightsSARSMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesNameDomain" xlink:label="us-gaap_AntidilutiveSecuritiesNameDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:to="us-gaap_StockAppreciationRightsSARSMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" xlink:to="us-gaap_AntidilutiveSecuritiesNameDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AntidilutiveSecuritiesNameDomain" xlink:to="us-gaap_RestrictedStockMember" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationAdditionalInformationDetail">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_TwoThousandFourteenStockIncentivePlanMember" xlink:label="trex_TwoThousandFourteenStockIncentivePlanMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockAppreciationRightsSARSMember" xlink:label="us-gaap_StockAppreciationRightsSARSMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration" xlink:label="us-gaap_ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" xlink:label="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanNameDomain" xlink:to="trex_TwoThousandFourteenStockIncentivePlanMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_StockAppreciationRightsSARSMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_AwardTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_PlanNameAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_CommonStockCapitalSharesReservedForFutureIssuance" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationGrantsDetail">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_TimeBasedRestrictedStockUnitsMember" xlink:label="trex_TimeBasedRestrictedStockUnitsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice" xlink:label="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PerformanceBasedRestrictedStockUnitsMember" xlink:label="trex_PerformanceBasedRestrictedStockUnitsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockAppreciationRightsSARSMember" xlink:label="us-gaap_StockAppreciationRightsSARSMember"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="trex_TimeBasedRestrictedStockUnitsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="trex_PerformanceBasedRestrictedStockUnitsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_StockAppreciationRightsSARSMember" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/DisclosureStockbasedCompensationSummaryOfStockbasedCompensationExpensesParentheticalDetails">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PerformanceBasedRestrictedStockAndPerformanceBasedRestrictedStockUnitsMember" xlink:label="trex_PerformanceBasedRestrictedStockAndPerformanceBasedRestrictedStockUnitsMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockAppreciationRightsSARSMember" xlink:label="us-gaap_StockAppreciationRightsSARSMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PerformanceBasedRestrictedStockAdjustmentMember" xlink:label="trex_PerformanceBasedRestrictedStockAdjustmentMember"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="trex_PerformanceBasedRestrictedStockAndPerformanceBasedRestrictedStockUnitsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_AwardTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_StockAppreciationRightsSARSMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="trex_PerformanceBasedRestrictedStockAdjustmentMember" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfAssumptionsUsedToEstimateFairValueOfEachSarDetail">
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems" xlink:label="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable" xlink:label="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockAppreciationRightsSARSMember" xlink:label="us-gaap_StockAppreciationRightsSARSMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" xlink:label="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems" xlink:to="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_StockAppreciationRightsSARSMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable" xlink:to="us-gaap_AwardTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems" xlink:to="us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationExpensesDetail">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:label="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockAppreciationRightsSARSMember" xlink:label="us-gaap_StockAppreciationRightsSARSMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_TimeBasedRestrictedStockandRestrictedstockUnitsMember" xlink:label="trex_TimeBasedRestrictedStockandRestrictedstockUnitsMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PerformanceBasedRestrictedStockAndrestrictedStockunitsMember" xlink:label="trex_PerformanceBasedRestrictedStockAndrestrictedStockunitsMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_EmployeeStockPurchasePlanMember" xlink:label="trex_EmployeeStockPurchasePlanMember"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_StockAppreciationRightsSARSMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="us-gaap_AwardTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="trex_TimeBasedRestrictedStockandRestrictedstockUnitsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="trex_PerformanceBasedRestrictedStockAndrestrictedStockunitsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="trex_EmployeeStockPurchasePlanMember" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/IncomeTaxesAdditionalInformationDetail">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxContingencyLineItems" xlink:label="us-gaap_IncomeTaxContingencyLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxContingencyTable" xlink:label="us-gaap_IncomeTaxContingencyTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="us-gaap_IncomeTaxAuthorityNameDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InternalRevenueServiceIRSMember" xlink:label="us-gaap_InternalRevenueServiceIRSMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredTaxAssetsValuationAllowance" xlink:label="us-gaap_DeferredTaxAssetsValuationAllowance"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityNameAxis" xlink:label="us-gaap_IncomeTaxAuthorityNameAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxAuthorityNameDomain" xlink:label="us-gaap_IncomeTaxAuthorityNameDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OpenTaxYear" xlink:label="us-gaap_OpenTaxYear"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:label="us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ExcessTaxBenefitsFromStockBasedAwards" xlink:label="trex_ExcessTaxBenefitsFromStockBasedAwards"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_IncomeTaxContingencyTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeTaxAuthorityNameDomain" xlink:to="us-gaap_InternalRevenueServiceIRSMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_DeferredTaxAssetsValuationAllowance" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_IncomeTaxContingencyTable" xlink:to="us-gaap_IncomeTaxAuthorityNameAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_IncomeTaxAuthorityNameAxis" xlink:to="us-gaap_IncomeTaxAuthorityNameDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_IncomeTaxAuthorityNameAxis" xlink:to="us-gaap_IncomeTaxAuthorityNameDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_IncomeTaxExpenseBenefit" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_OpenTaxYear" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="us-gaap_EffectiveIncomeTaxRateContinuingOperations" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncomeTaxContingencyLineItems" xlink:to="trex_ExcessTaxBenefitsFromStockBasedAwards" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail">
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ScheduleOfCommitmentsAndContingenciesLineItems" xlink:label="trex_ScheduleOfCommitmentsAndContingenciesLineItems"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:label="trex_ScheduleOfCommitmentsAndContingenciesTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductOrServiceAxis" xlink:label="srt_ProductOrServiceAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_ProductsAndServicesDomain" xlink:label="srt_ProductsAndServicesDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" xlink:label="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SignatureRailingAndTranscendCladdingMember" xlink:label="trex_SignatureRailingAndTranscendCladdingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GuaranteeObligationsByNatureAxis" xlink:label="us-gaap_GuaranteeObligationsByNatureAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GuaranteeObligationsNatureDomain" xlink:label="us-gaap_GuaranteeObligationsNatureDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GuaranteeObligationsNatureDomain" xlink:label="us-gaap_GuaranteeObligationsNatureDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_WarrantyPeriod" xlink:label="trex_WarrantyPeriod"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContingentConsiderationByTypeAxis" xlink:label="us-gaap_ContingentConsiderationByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContingentConsiderationTypeDomain" xlink:label="us-gaap_ContingentConsiderationTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContingentConsiderationTypeDomain" xlink:label="us-gaap_ContingentConsiderationTypeDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_RangeMember" xlink:label="srt_RangeMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:label="us-gaap_ValuationAllowancesAndReservesTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="us-gaap_ValuationAllowancesAndReservesDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="us-gaap_ValuationAllowancesAndReservesDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" xlink:label="us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" xlink:label="us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain_default"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablePortfolioSegmentAxis" xlink:label="us-gaap_FinancingReceivablePortfolioSegmentAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_FinancingReceivablePortfolioSegmentDomain" xlink:label="us-gaap_FinancingReceivablePortfolioSegmentDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ResidentialUseMember" xlink:label="trex_ResidentialUseMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SupplyCommitmentAxis" xlink:label="us-gaap_SupplyCommitmentAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SupplyCommitmentArrangementMember" xlink:label="us-gaap_SupplyCommitmentArrangementMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SupplyCommitmentArrangementMember" xlink:label="us-gaap_SupplyCommitmentArrangementMember_default"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember" xlink:label="trex_ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SurfaceFlakingWarrantyReserveMember" xlink:label="trex_SurfaceFlakingWarrantyReserveMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_IndustrialRevenueBondsMember" xlink:label="trex_IndustrialRevenueBondsMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_TranscendDeckingMember" xlink:label="trex_TranscendDeckingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DebtInstrumentCarryingAmount" xlink:label="us-gaap_DebtInstrumentCarryingAmount"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_CommercialUseMember" xlink:label="trex_CommercialUseMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember" xlink:label="trex_ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SelectDeckingAndUniversalFasciaMember" xlink:label="trex_SelectDeckingAndUniversalFasciaMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_GrossAssetAndLiability" xlink:label="trex_GrossAssetAndLiability"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ResidentialAndCommercialUseMember" xlink:label="trex_ResidentialAndCommercialUseMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember" xlink:label="trex_EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PercentSensitivityChangeInExpectedSurfaceFlakingClaims" xlink:label="trex_PercentSensitivityChangeInExpectedSurfaceFlakingClaims"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SignatureRailingMember" xlink:label="trex_SignatureRailingMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SensitivityChangeInSurfaceFlakingWarrantyReserve" xlink:label="trex_SensitivityChangeInSurfaceFlakingWarrantyReserve"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AreaOfLand" xlink:label="us-gaap_AreaOfLand"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesLineItems" xlink:to="trex_ScheduleOfCommitmentsAndContingenciesTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_ProductOrServiceAxis" xlink:to="srt_ProductsAndServicesDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:to="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="trex_SignatureRailingAndTranscendCladdingMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_GuaranteeObligationsByNatureAxis" xlink:to="us-gaap_GuaranteeObligationsNatureDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_GuaranteeObligationsByNatureAxis" xlink:to="us-gaap_GuaranteeObligationsNatureDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesLineItems" xlink:to="trex_WarrantyPeriod" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ContingentConsiderationByTypeAxis" xlink:to="us-gaap_ContingentConsiderationTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ContingentConsiderationByTypeAxis" xlink:to="us-gaap_ContingentConsiderationTypeDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:to="us-gaap_ValuationAllowancesAndReservesDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:to="us-gaap_ValuationAllowancesAndReservesDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" xlink:to="us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis" xlink:to="us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_FinancingReceivablePortfolioSegmentAxis" xlink:to="us-gaap_FinancingReceivablePortfolioSegmentDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_GuaranteeObligationsNatureDomain" xlink:to="trex_ResidentialUseMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_SupplyCommitmentAxis" xlink:to="us-gaap_SupplyCommitmentArrangementMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_SupplyCommitmentAxis" xlink:to="us-gaap_SupplyCommitmentArrangementMember_default" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SupplyCommitmentArrangementMember" xlink:to="trex_ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ValuationAllowancesAndReservesDomain" xlink:to="trex_SurfaceFlakingWarrantyReserveMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ContingentConsiderationTypeDomain" xlink:to="trex_IndustrialRevenueBondsMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:to="srt_ProductOrServiceAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="trex_TranscendDeckingMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesLineItems" xlink:to="us-gaap_DebtInstrumentCarryingAmount" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_GuaranteeObligationsNatureDomain" xlink:to="trex_CommercialUseMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_SupplyCommitmentArrangementMember" xlink:to="trex_ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:to="us-gaap_GuaranteeObligationsByNatureAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="trex_SelectDeckingAndUniversalFasciaMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesLineItems" xlink:to="trex_GrossAssetAndLiability" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_GuaranteeObligationsNatureDomain" xlink:to="trex_ResidentialAndCommercialUseMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:to="us-gaap_ValuationAllowancesAndReservesTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="trex_EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="3" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesLineItems" xlink:to="trex_PercentSensitivityChangeInExpectedSurfaceFlakingClaims" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:to="srt_RangeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_ProductsAndServicesDomain" xlink:to="trex_SignatureRailingMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="4" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesLineItems" xlink:to="trex_SensitivityChangeInSurfaceFlakingWarrantyReserve" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:to="us-gaap_ContingentConsiderationByTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="5" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesLineItems" xlink:to="us-gaap_AreaOfLand" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="6" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:to="us-gaap_SupplyCommitmentAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="7" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="trex_ScheduleOfCommitmentsAndContingenciesTable" xlink:to="us-gaap_FinancingReceivablePortfolioSegmentAxis" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyLiabilityLineItems" xlink:label="us-gaap_ProductWarrantyLiabilityLineItems"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProductWarrantyLiabilityTable" xlink:label="us-gaap_ProductWarrantyLiabilityTable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContingentConsiderationByTypeAxis" xlink:label="us-gaap_ContingentConsiderationByTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ContingentConsiderationTypeDomain" xlink:label="us-gaap_ContingentConsiderationTypeDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:label="us-gaap_ValuationAllowancesAndReservesTypeAxis"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ValuationAllowancesAndReservesDomain" xlink:label="us-gaap_ValuationAllowancesAndReservesDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrual" xlink:label="us-gaap_StandardProductWarrantyAccrual"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SurfaceFlakingWarrantyReserveMember" xlink:label="trex_SurfaceFlakingWarrantyReserveMember"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_ProductWarrantyMember" xlink:label="trex_ProductWarrantyMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:label="us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_SurfaceFlakingMember" xlink:label="trex_SurfaceFlakingMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrualPayments" xlink:label="us-gaap_StandardProductWarrantyAccrualPayments"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_ProductWarrantyLiabilityLineItems" xlink:to="us-gaap_ProductWarrantyLiabilityTable" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ContingentConsiderationByTypeAxis" xlink:to="us-gaap_ContingentConsiderationTypeDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ValuationAllowancesAndReservesTypeAxis" xlink:to="us-gaap_ValuationAllowancesAndReservesDomain" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ProductWarrantyLiabilityLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrual" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ProductWarrantyLiabilityTable" xlink:to="us-gaap_ContingentConsiderationByTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ValuationAllowancesAndReservesDomain" xlink:to="trex_SurfaceFlakingWarrantyReserveMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ContingentConsiderationTypeDomain" xlink:to="trex_ProductWarrantyMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ProductWarrantyLiabilityLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_ProductWarrantyLiabilityTable" xlink:to="us-gaap_ValuationAllowancesAndReservesTypeAxis" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="1" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ContingentConsiderationTypeDomain" xlink:to="trex_SurfaceFlakingMember" priority="2" use="optional"/>
          <link:definitionArc xlink:type="arc" order="2" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ProductWarrantyLiabilityLineItems" xlink:to="us-gaap_StandardProductWarrantyAccrualPayments" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" xlink:label="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TypeOfAdoptionMember" xlink:label="us-gaap_TypeOfAdoptionMember"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountingStandardsUpdate202307Member" xlink:label="us-gaap_AccountingStandardsUpdate202307Member"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ValuationTechniqueDomain" xlink:label="us-gaap_ValuationTechniqueDomain"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_BlackScholesMertonModelMember" xlink:label="us-gaap_BlackScholesMertonModelMember"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" priority="2" use="optional"/>
        </link:definitionLink>
        <link:definitionLink xlink:type="extended" xlink:role="http://fasb.org/srt/role/srt-eedm/ExtensibleEnumerationLists">
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PresidentAndChiefExecutiveOfficerMember" xlink:label="trex_PresidentAndChiefExecutiveOfficerMember"/>
          <link:definitionArc xlink:type="arc" order="0" xbrldt:closed="false" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="trex_PresidentAndChiefExecutiveOfficerMember" priority="2" use="optional"/>
        </link:definitionLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_OperatingIncomeLoss" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="us-gaap_NetIncomeLoss" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_GrossProfit" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_InterestIncomeExpenseNet" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeTaxExpenseBenefit" order="1" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_CostOfGoodsAndServicesSold" order="1" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" order="1" weight="-1" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ComprehensiveIncomeNetOfTax" xlink:label="us-gaap_ComprehensiveIncomeNetOfTax"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InterestIncomeExpenseNet" xlink:label="us-gaap_InterestIncomeExpenseNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/DisclosureLeasesMaturitiesOfOperatingLeaseLiabilitiesDetail2">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_OperatingLeaseLiability" order="1" weight="1" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_PreferredStockValue" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_Liabilities" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_DeferredIncomeTaxLiabilitiesNet" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_AccountsPayableCurrent" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_IntangibleAssetsNetIncludingGoodwill" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_CommonStockValue" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_CommitmentsAndContingencies" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_StandardProductWarrantyAccrualNoncurrent" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_OtherAssetsNoncurrent" order="2" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_AdditionalPaidInCapitalCommonStock" order="2" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_StockholdersEquity" order="2" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_OtherLiabilitiesNoncurrent" order="2" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_InventoryNet" order="2" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_StandardProductWarrantyAccrualCurrent" order="2" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" order="3" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" order="3" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" order="3" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" order="3" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LinesOfCreditCurrent" order="3" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_AssetsCurrent" order="4" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_TreasuryStockValue" order="4" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_LiabilitiesCurrent" order="4" weight="1" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:label="us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsPayableCurrent" xlink:label="us-gaap_AccountsPayableCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IntangibleAssetsNetIncludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetIncludingGoodwill"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrualNoncurrent" xlink:label="us-gaap_StandardProductWarrantyAccrualNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" xlink:label="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AdditionalPaidInCapitalCommonStock" xlink:label="us-gaap_AdditionalPaidInCapitalCommonStock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_StandardProductWarrantyAccrualCurrent" xlink:label="us-gaap_StandardProductWarrantyAccrualCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LinesOfCreditCurrent" xlink:label="us-gaap_LinesOfCreditCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_TreasuryStockValue" xlink:label="us-gaap_TreasuryStockValue"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_DepreciationDepletionAndAmortization" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_ProceedsFromLinesOfCredit" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" order="0" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_DeferredIncomeTaxExpenseBenefit" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_RepaymentsOfLinesOfCredit" order="1" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_PaymentsToAcquireIntangibleAssets" order="1" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_ShareBasedCompensation" order="2" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_PaymentsForRepurchaseOfCommonStock" order="2" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" order="2" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" order="2" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" order="3" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" order="3" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_OtherNoncashIncomeExpense" order="4" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="trex_PaymentsForProceedsFromFinancingCosts" order="4" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable" order="5" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInInventories" order="6" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" order="7" weight="-1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayable" order="8" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" order="9" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" order="10" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_ProfitLoss" order="11" weight="1" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromLinesOfCredit" xlink:label="us-gaap_ProceedsFromLinesOfCredit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit" xlink:label="us-gaap_DeferredIncomeTaxExpenseBenefit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_RepaymentsOfLinesOfCredit" xlink:label="us-gaap_RepaymentsOfLinesOfCredit"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsToAcquireIntangibleAssets" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock" xlink:label="us-gaap_PaymentsForRepurchaseOfCommonStock"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:label="us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions" xlink:label="us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherNoncashIncomeExpense" xlink:label="us-gaap_OtherNoncashIncomeExpense"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_PaymentsForProceedsFromFinancingCosts" xlink:label="trex_PaymentsForProceedsFromFinancingCosts"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccountsPayable" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable" xlink:label="us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_ProfitLoss" xlink:label="us-gaap_ProfitLoss"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/InventoriesSummaryOfInventoriesDetail">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_InventoryGross" xlink:to="us-gaap_InventoryFinishedGoods" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LIFOInventoryAmount" xlink:to="us-gaap_InventoryGross" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_InventoryGross" xlink:to="us-gaap_InventoryRawMaterials" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LIFOInventoryAmount" xlink:to="us-gaap_InventoryLIFOReserve" order="1" weight="-1" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryGross" xlink:label="us-gaap_InventoryGross"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryFinishedGoods" xlink:label="us-gaap_InventoryFinishedGoods"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LIFOInventoryAmount" xlink:label="us-gaap_LIFOInventoryAmount"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryRawMaterials" xlink:label="us-gaap_InventoryRawMaterials"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_InventoryLIFOReserve" xlink:label="us-gaap_InventoryLIFOReserve"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsSummaryOfPrepaidExpensesAndOtherAssetsDetail">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="us-gaap_PrepaidExpenseCurrent" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="us-gaap_IncomeTaxesReceivable" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="us-gaap_OtherAssetsCurrent" order="2" weight="1" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_PrepaidExpenseCurrent" xlink:label="us-gaap_PrepaidExpenseCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_IncomeTaxesReceivable" xlink:label="us-gaap_IncomeTaxesReceivable"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAssetsCurrent" xlink:label="us-gaap_OtherAssetsCurrent"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" xlink:to="us-gaap_AccruedMarketingCostsCurrent" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" xlink:to="trex_AccruedCapitalProjectsCurrent" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent" order="2" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" order="3" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" xlink:to="us-gaap_AccruedIncomeTaxesCurrent" order="4" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" xlink:to="trex_AccruedManufacturingExpensesCurrent" order="5" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" xlink:to="us-gaap_OtherAccruedLiabilitiesCurrent" order="6" weight="1" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" xlink:label="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedMarketingCostsCurrent" xlink:label="us-gaap_AccruedMarketingCostsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_AccruedCapitalProjectsCurrent" xlink:label="trex_AccruedCapitalProjectsCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_AccruedIncomeTaxesCurrent" xlink:label="us-gaap_AccruedIncomeTaxesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_AccruedManufacturingExpensesCurrent" xlink:label="trex_AccruedManufacturingExpensesCurrent"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OtherAccruedLiabilitiesCurrent" xlink:label="us-gaap_OtherAccruedLiabilitiesCurrent"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" order="1" weight="1" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability"/>
          <link:loc xlink:type="locator" xlink:href="trex-20250331.xsd#trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities" xlink:label="trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent"/>
        </link:calculationLink>
        <link:calculationLink xlink:type="extended" xlink:role="http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail">
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" order="0" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" order="1" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" order="2" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" order="3" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" order="4" weight="1" use="optional"/>
          <link:calculationArc xlink:type="arc" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" order="5" weight="1" use="optional"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
          <link:loc xlink:type="locator" xlink:href="https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive"/>
        </link:calculationLink>
      </link:linkbase>
    </xsd:appinfo>
  </xsd:annotation>
  <xsd:element id="trex_LineOfCreditFacilityAdditionalBorrowingCapacity" name="LineOfCreditFacilityAdditionalBorrowingCapacity" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice" type="dtr-types:perShareItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="trex_CapitalExpendituresInAccountsPayableAndAccruedExpenses" name="CapitalExpendituresInAccountsPayableAndAccruedExpenses" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="trex_GrossAssetAndLiability" name="GrossAssetAndLiability" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="debit"/>
  <xsd:element id="trex_ResidentialAndCommercialUseMember" name="ResidentialAndCommercialUseMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock" name="ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_EmployeeStockPurchasePlanMember" name="EmployeeStockPurchasePlanMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_TranscendDeckingMember" name="TranscendDeckingMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember" name="EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_SignatureRailingAndTranscendCladdingMember" name="SignatureRailingAndTranscendCladdingMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_RevolvingALoansMember" name="RevolvingALoansMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_ComponentsOfBasicAndDilutedEarningPerShareTable" name="ComponentsOfBasicAndDilutedEarningPerShareTable" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_CommercialUseMember" name="CommercialUseMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_CreditAgreementSecondAmendmentMember" name="CreditAgreementSecondAmendmentMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities" name="LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="trex_SignatureRailingMember" name="SignatureRailingMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_PerformanceBasedRestrictedStockUnitsMember" name="PerformanceBasedRestrictedStockUnitsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_SwinglineLetterOfCreditMember" name="SwinglineLetterOfCreditMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems" name="ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_AgreementDomain" name="AgreementDomain" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_PerformanceBasedRestrictedStockAdjustmentMember" name="PerformanceBasedRestrictedStockAdjustmentMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_Rule10B51ArrModifiedFlag" name="Rule10B51ArrModifiedFlag" type="xbrli:booleanItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="trex_ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember" name="ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_AccruedManufacturingExpensesCurrent" name="AccruedManufacturingExpensesCurrent" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="trex_PerformanceBasedRestrictedStockAndrestrictedStockunitsMember" name="PerformanceBasedRestrictedStockAndrestrictedStockunitsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems" name="ComponentsOfBasicAndDilutedEarningPerShareLineItems" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_SurfaceFlakingWarrantyReserveMember" name="SurfaceFlakingWarrantyReserveMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_ResidentialUseMember" name="ResidentialUseMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock" name="DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="trex_SensitivityChangeInSurfaceFlakingWarrantyReserve" name="SensitivityChangeInSurfaceFlakingWarrantyReserve" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="trex_AccruedCapitalProjectsCurrent" name="AccruedCapitalProjectsCurrent" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="trex_TwoThousandFourteenStockIncentivePlanMember" name="TwoThousandFourteenStockIncentivePlanMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_SeasonalityDisclosureTextBlock" name="SeasonalityDisclosureTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="trex_RevolvingBLoanMember" name="RevolvingBLoanMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_NewAccountingStandardsNotYetAdoptedAbstract" name="NewAccountingStandardsNotYetAdoptedAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_PerformanceBasedRestrictedStockAndPerformanceBasedRestrictedStockUnitsMember" name="PerformanceBasedRestrictedStockAndPerformanceBasedRestrictedStockUnitsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_PresidentAndChiefExecutiveOfficerMember" name="PresidentAndChiefExecutiveOfficerMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_PrepaidExpenseAndOtherAssetsCurrentTableTextBlock" name="PrepaidExpenseAndOtherAssetsCurrentTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="trex_CreditFacilityOneAxis" name="CreditFacilityOneAxis" type="xbrli:stringItemType" substitutionGroup="xbrldt:dimensionItem" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_IndustrialRevenueBondsMember" name="IndustrialRevenueBondsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_CreditFacilityOneDomain" name="CreditFacilityOneDomain" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_SelectDeckingAndUniversalFasciaMember" name="SelectDeckingAndUniversalFasciaMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_AgreementAxis" name="AgreementAxis" type="xbrli:stringItemType" substitutionGroup="xbrldt:dimensionItem" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_PaymentsForProceedsFromFinancingCosts" name="PaymentsForProceedsFromFinancingCosts" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="trex_SurfaceFlakingMember" name="SurfaceFlakingMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_TwoThousandTwentyThreeStockRepurchaseProgramMember" name="TwoThousandTwentyThreeStockRepurchaseProgramMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_ScheduleOfCommitmentsAndContingenciesLineItems" name="ScheduleOfCommitmentsAndContingenciesLineItems" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_ProductWarrantyMember" name="ProductWarrantyMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_NonRule10B51ArrModifiedFlag" name="NonRule10B51ArrModifiedFlag" type="xbrli:booleanItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="trex_ScheduleOfCommitmentsAndContingenciesTable" name="ScheduleOfCommitmentsAndContingenciesTable" type="xbrli:stringItemType" substitutionGroup="xbrldt:hypercubeItem" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_NumberOfSalesRetailers" name="NumberOfSalesRetailers" type="xbrli:integerItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="trex_TwoThousandEighteenStockRepurchaseProgramMember" name="TwoThousandEighteenStockRepurchaseProgramMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_SupplementalFinancialInformationOfOperatingLeasesTableTextBlock" name="SupplementalFinancialInformationOfOperatingLeasesTableTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="trex_PercentSensitivityChangeInExpectedSurfaceFlakingClaims" name="PercentSensitivityChangeInExpectedSurfaceFlakingClaims" type="dtr-types:percentItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="trex_TimeBasedRestrictedStockUnitsMember" name="TimeBasedRestrictedStockUnitsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_SupplementalBalanceSheetInformationAbstract" name="SupplementalBalanceSheetInformationAbstract" type="xbrli:stringItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_StockAppreciationRightsMember" name="StockAppreciationRightsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_PrepaidAndOtherCurrentAssetsDisclosureTextBlock" name="PrepaidAndOtherCurrentAssetsDisclosureTextBlock" type="dtr-types:textBlockItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="trex_ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember" name="ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_TimeBasedRestrictedStockandRestrictedstockUnitsMember" name="TimeBasedRestrictedStockandRestrictedstockUnitsMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_WarrantyPeriod" name="WarrantyPeriod" type="xbrli:durationItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false"/>
  <xsd:element id="trex_FifthAmendmentAndRestatedAgreementMember" name="FifthAmendmentAndRestatedAgreementMember" type="dtr-types:domainItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="true"/>
  <xsd:element id="trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" name="AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="instant" nillable="true" abstract="false" xbrli:balance="credit"/>
  <xsd:element id="trex_ExcessTaxBenefitsFromStockBasedAwards" name="ExcessTaxBenefitsFromStockBasedAwards" type="xbrli:monetaryItemType" substitutionGroup="xbrli:item" xbrli:periodType="duration" nillable="true" abstract="false" xbrli:balance="credit"/>
</xsd:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>8
<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. 24, 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_CoverAbstract', window );"><strong>Cover [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</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_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_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="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">0001069878<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_DocumentTransitionReport', window );">Document Transition Report</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_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">Trex Company, 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_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_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="ro">
<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="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">TREX<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Large Accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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="re">
<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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">107,227,048<span></span>
</td>
</tr>
<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_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">001-14649<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">54-1910453<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">2500 Trex Way<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">Winchester<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">22601<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">VA<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">540<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">542-6300<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NYSE<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentQuarterlyReport', window );">Document Quarterly Report</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_CoverAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CoverAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CurrentFiscalYearEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>End date of current fiscal year in the format --MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CurrentFiscalYearEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gMonthDayItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalPeriodFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fiscalPeriodItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentQuarterlyReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an quarterly report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-Q<br> -Number 240<br> -Section 308<br> -Subsection a<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentQuarterlyReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as a transition report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentTransitionReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_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_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>9
<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>Condensed Consolidated Statements Of Comprehensive Income - 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_IncomeStatementAbstract', window );"><strong>Income Statement [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 339,993<span></span>
</td>
<td class="nump">$ 373,635<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of sales</a></td>
<td class="nump">202,262<span></span>
</td>
<td class="nump">204,023<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">137,731<span></span>
</td>
<td class="nump">169,612<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingGeneralAndAdministrativeExpense', window );">Selling, general and administrative expenses</a></td>
<td class="nump">56,068<span></span>
</td>
<td class="nump">50,600<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingIncomeLoss', window );">Income from operations</a></td>
<td class="nump">81,663<span></span>
</td>
<td class="nump">119,012<span></span>
</td>
</tr>
<tr class="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 expense (income), net</a></td>
<td class="nump">76<span></span>
</td>
<td class="num">(5)<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 );">Income before income taxes</a></td>
<td class="nump">81,587<span></span>
</td>
<td class="nump">119,017<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Provision for income taxes</a></td>
<td class="nump">21,153<span></span>
</td>
<td class="nump">29,947<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_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 60,434<span></span>
</td>
<td class="nump">$ 89,070<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic earnings per common share</a></td>
<td class="nump">$ 0.56<span></span>
</td>
<td class="nump">$ 0.82<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic weighted average common shares outstanding</a></td>
<td class="nump">107,180,665<span></span>
</td>
<td class="nump">108,640,168<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted earnings per common share</a></td>
<td class="nump">$ 0.56<span></span>
</td>
<td class="nump">$ 0.82<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted weighted average common shares outstanding</a></td>
<td class="nump">107,284,084<span></span>
</td>
<td class="nump">108,790,625<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</a></td>
<td class="nump">$ 60,434<span></span>
</td>
<td class="nump">$ 89,070<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/2147478524/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/2147477250/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://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 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))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CostOfGoodsAndServicesSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 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 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 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 (e)(4)<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 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 9: 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 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 (b)<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 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<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 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 13: 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 14: 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 15: 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 16: 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 17: 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 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: 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 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 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 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 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 (e)(4)<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 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 9: 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 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 (b)<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 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<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 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 13: 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 14: 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 15: 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 16: 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 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 19: 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_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/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/otherTransitionRef<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 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 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(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 10: 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 11: 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 12: 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 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)(i))<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)(ii))<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/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 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/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/otherTransitionRef<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 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 9: 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 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 11: 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 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeStatementAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 5: 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 6: 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 7: 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 8: 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 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> -Subparagraph (h)<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 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 11: 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 12: 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_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>Amount of interest income (expense) classified as operating.</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 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 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/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_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 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 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 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 10: 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 11: 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 12: 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 13: 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 14: 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 15: 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 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: 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 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 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 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 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 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)(4)(iii)(A))<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 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 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 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 32: 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 33: 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 34: 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 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The net result for the period of deducting operating expenses from operating revenues.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/otherTransitionRef<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/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 31<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/otherTransitionRef<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 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<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 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br><br>Reference 7: http://www.xbrl.org/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 8: 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 9: 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 10: 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 11: 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 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> -Subparagraph (a)<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 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SellingGeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SellingGeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-16<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<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="1"><div style="width: 200px;"><strong>Condensed 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">$ 4,963<span></span>
</td>
<td class="nump">$ 1,292<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsReceivableNetCurrent', window );">Accounts receivable, net</a></td>
<td class="nump">391,064<span></span>
</td>
<td class="nump">88,356<span></span>
</td>
</tr>
<tr class="ro">
<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">176,419<span></span>
</td>
<td class="nump">207,282<span></span>
</td>
</tr>
<tr class="re">
<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 assets</a></td>
<td class="nump">19,744<span></span>
</td>
<td class="nump">21,978<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">592,190<span></span>
</td>
<td class="nump">318,908<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property, plant and equipment, net</a></td>
<td class="nump">967,276<span></span>
</td>
<td class="nump">922,868<span></span>
</td>
</tr>
<tr class="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 assets</a></td>
<td class="nump">49,976<span></span>
</td>
<td class="nump">52,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_IntangibleAssetsNetIncludingGoodwill', window );">Goodwill and other intangible assets, net</a></td>
<td class="nump">23,529<span></span>
</td>
<td class="nump">22,048<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssetsNoncurrent', window );">Other assets</a></td>
<td class="nump">8,228<span></span>
</td>
<td class="nump">8,279<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">1,641,199<span></span>
</td>
<td class="nump">1,324,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_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">45,576<span></span>
</td>
<td class="nump">61,272<span></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_trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty', window );">Accrued expenses and other liabilities</a></td>
<td class="nump">105,427<span></span>
</td>
<td class="nump">72,879<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualCurrent', window );">Accrued warranty</a></td>
<td class="nump">6,611<span></span>
</td>
<td class="nump">5,726<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LinesOfCreditCurrent', window );">Line of credit</a></td>
<td class="nump">443,947<span></span>
</td>
<td class="nump">202,600<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">601,561<span></span>
</td>
<td class="nump">342,477<span></span>
</td>
</tr>
<tr class="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">56,032<span></span>
</td>
<td class="nump">56,032<span></span>
</td>
</tr>
<tr class="re">
<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">39,788<span></span>
</td>
<td class="nump">41,979<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualNoncurrent', window );">Non-current accrued warranty</a></td>
<td class="nump">17,180<span></span>
</td>
<td class="nump">17,109<span></span>
</td>
</tr>
<tr class="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 long-term liabilities</a></td>
<td class="nump">16,559<span></span>
</td>
<td class="nump">16,559<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_Liabilities', window );">Total liabilities</a></td>
<td class="nump">731,120<span></span>
</td>
<td class="nump">474,156<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingencies', window );">Commitments and contingencies</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Stockholders' equity</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Preferred stock, $0.01 par value, 3,000,000 shares authorized; none issued and outstanding</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock, $0.01 par value, 360,000,000 shares authorized; 141,170,958 and 141,098,251 shares issued and 107,227,012 and 107,154,305 shares outstanding, at March 31, 2025 and December 31, 2024, respectively</a></td>
<td class="nump">1,412<span></span>
</td>
<td class="nump">1,411<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapitalCommonStock', window );">Additional paid-in capital</a></td>
<td class="nump">147,655<span></span>
</td>
<td class="nump">148,153<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">1,622,884<span></span>
</td>
<td class="nump">1,562,450<span></span>
</td>
</tr>
<tr class="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, 33,943,946 and 33,943,946 shares at March 31, 2025 and December 31, 2024</a></td>
<td class="num">(861,872)<span></span>
</td>
<td class="num">(861,872)<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 stockholders' equity</a></td>
<td class="nump">910,079<span></span>
</td>
<td class="nump">850,142<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 stockholders' equity</a></td>
<td class="nump">$ 1,641,199<span></span>
</td>
<td class="nump">$ 1,324,298<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accrued liabilities and other liabilities current excluding warranty.</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;">trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19)(a))<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 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481990/310-10-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountsReceivableNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdditionalPaidInCapitalCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.</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(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_AdditionalPaidInCapitalCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset recognized for present right to economic benefit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<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 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 8: 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 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 12: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 13: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 16: 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 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/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 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<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)(A))<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)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<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)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 28: 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 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br><br>Reference 30: 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/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset recognized for present right to economic benefit, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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_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://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(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-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(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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/2147478777/944-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 1<br> -Subparagraph (SX 210.6-04(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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://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 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)(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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/2147478777/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_IntangibleAssetsNetIncludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 impairment and amortization, of goodwill, indefinite-lived, and finite-lived intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480265/350-10-S45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsNetIncludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_Liabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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://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(20))<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(24))<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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 5: 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(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 6: 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(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-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(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-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(21))<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 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 10: 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 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 810<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481203/810-10-50-3<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 13: http://www.xbrl.org/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 14: 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 15: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 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/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 28: 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 29: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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/2147478777/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/2147478546/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://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(21))<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/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 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)(i))<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)(ii))<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><br>Reference 21: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481404/852-10-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LinesOfCreditCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The carrying value as of the balance sheet date of the current portion of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://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(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LinesOfCreditCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<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_PreferredStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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(28))<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 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)(21))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-7A<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><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)(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 360<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478451/942-360-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated undistributed earnings (deficit).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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><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 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 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 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 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)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 8: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StandardProductWarrantyAccrualCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount as of the balance sheet date of the aggregate standard product warranty liability that is expected to be paid within one year or the normal operating cycle, if longer. Does not include the balance for the extended product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrualCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_StandardProductWarrantyAccrualNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount as of the balance sheet date of the aggregate standard product warranty liability that is expected to be paid after one year or beyond the normal operating cycle, if longer. Does not include the balance for the extended product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrualNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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://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 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(30))<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(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 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(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 11: 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 12: 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 13: 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 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_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> -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 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(30))<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 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 4: 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_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>11
<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="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets (Parenthetical) - $ / shares<br></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_PreferredStockParOrStatedValuePerShare', window );">Preferred stock, par value</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesAuthorized', window );">Preferred stock, shares authorized</a></td>
<td class="nump">3,000,000<span></span>
</td>
<td class="nump">3,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesIssued', window );">Preferred stock, shares issued</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesOutstanding', window );">Preferred stock, shares outstanding</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="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</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</a></td>
<td class="nump">360,000,000<span></span>
</td>
<td class="nump">360,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</a></td>
<td class="nump">141,170,958<span></span>
</td>
<td class="nump">141,098,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_CommonStockSharesOutstanding', window );">Common stock, shares outstanding</a></td>
<td class="nump">107,227,012<span></span>
</td>
<td class="nump">107,154,305<span></span>
</td>
</tr>
<tr class="ro">
<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</a></td>
<td class="nump">33,943,946<span></span>
</td>
<td class="nump">33,943,946<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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://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 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(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<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><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 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 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(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockParOrStatedValuePerShare</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued for nonredeemable preferred shares and preferred shares redeemable solely at option of issuer. Includes, but is not limited to, preferred shares issued, repurchased, and held as treasury shares. Excludes preferred shares classified as debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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(28))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-04(16)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 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(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfFinancialPositionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementOfFinancialPositionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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>12
<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>Condensed Consolidated Statements of Changes in Stockholders' Equity - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Total</div></th>
<th class="th"><div>Common Stock [Member]</div></th>
<th class="th"><div>Additional Paid-In Capital [Member]</div></th>
<th class="th"><div>Retained Earnings [Member]</div></th>
<th class="th"><div>Treasury Stock [Member]</div></th>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning Balance at Dec. 31, 2023</a></td>
<td class="nump">$ 716,671<span></span>
</td>
<td class="nump">$ 1,410<span></span>
</td>
<td class="nump">$ 140,157<span></span>
</td>
<td class="nump">$ 1,336,058<span></span>
</td>
<td class="num">$ (760,954)<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_SharesIssued', window );">Beginning Balance, Shares at Dec. 31, 2023</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">108,611,537<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Beginning Balance, Treasury Stock, Shares at Dec. 31, 2023</a></td>
<td class="text">&#160;<span></span>
</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">32,363,306<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_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">89,070<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">89,070<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Employee stock plans</a></td>
<td class="nump">397<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">397<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_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Employee stock plans, Shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,640<span></span>
</td>
<td class="text">&#160;<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_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Shares withheld for taxes on awards</a></td>
<td class="num">(5,146)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(5,146)<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_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Shares withheld for taxes on awards, Shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(55,103)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross', window );">Stock-based compensation</a></td>
<td class="nump">3,154<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">3,153<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_StockIssuedDuringPeriodSharesShareBasedCompensationGross', window );">Stock-based compensation, Shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">130,683<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance at Mar. 31, 2024</a></td>
<td class="nump">804,146<span></span>
</td>
<td class="nump">$ 1,411<span></span>
</td>
<td class="nump">138,561<span></span>
</td>
<td class="nump">1,425,128<span></span>
</td>
<td class="num">$ (760,954)<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_SharesIssued', window );">Ending Balance, Shares at Mar. 31, 2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">108,692,757<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Ending Balance, Treasury Stock, Shares at Mar. 31, 2024</a></td>
<td class="text">&#160;<span></span>
</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">32,363,306<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning Balance at Dec. 31, 2024</a></td>
<td class="nump">$ 850,142<span></span>
</td>
<td class="nump">$ 1,411<span></span>
</td>
<td class="nump">148,153<span></span>
</td>
<td class="nump">1,562,450<span></span>
</td>
<td class="num">$ (861,872)<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_SharesIssued', window );">Beginning Balance, Shares at Dec. 31, 2024</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">107,154,305<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Beginning Balance, Treasury Stock, Shares at Dec. 31, 2024</a></td>
<td class="nump">33,943,946<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">33,943,946<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 60,434<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">60,434<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Employee stock plans</a></td>
<td class="nump">299<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">299<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_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Employee stock plans, Shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6,068<span></span>
</td>
<td class="text">&#160;<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_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Shares withheld for taxes on awards</a></td>
<td class="num">(3,110)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(3,110)<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_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Shares withheld for taxes on awards, Shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(49,949)<span></span>
</td>
<td class="text">&#160;<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_StockIssuedDuringPeriodValueShareBasedCompensationGross', window );">Stock-based compensation</a></td>
<td class="nump">2,314<span></span>
</td>
<td class="nump">$ 1<span></span>
</td>
<td class="nump">2,313<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_StockIssuedDuringPeriodSharesShareBasedCompensationGross', window );">Stock-based compensation, Shares</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">116,588<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending Balance at Mar. 31, 2025</a></td>
<td class="nump">$ 910,079<span></span>
</td>
<td class="nump">$ 1,412<span></span>
</td>
<td class="nump">$ 147,655<span></span>
</td>
<td class="nump">$ 1,622,884<span></span>
</td>
<td class="num">$ (861,872)<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_SharesIssued', window );">Ending Balance, Shares at Mar. 31, 2025</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">107,227,012<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TreasuryStockCommonShares', window );">Ending Balance, Treasury Stock, Shares at Mar. 31, 2025</a></td>
<td class="nump">33,943,946<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">33,943,946<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_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease to equity for 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 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 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 10: 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 11: 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 12: 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 13: 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 14: 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 15: 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 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: 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 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 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 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 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 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)(4)(iii)(A))<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 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 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 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 32: 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 33: 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 34: 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 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of stock issued as of the balance sheet date, including shares that had been issued and were previously outstanding but which are now 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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-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_SharesIssued</td>
</tr>
<tr>
<td style="padding-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_SharesPaidForTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares used to settle 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodSharesShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP).</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> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<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(28))<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(29))<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> -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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodSharesShareBasedCompensationGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, before forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).</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_StockIssuedDuringPeriodSharesShareBasedCompensationGross</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodValueShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).</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(28))<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(29))<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 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480008/505-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-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_StockIssuedDuringPeriodValueShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_StockIssuedDuringPeriodValueShareBasedCompensationGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Value, before forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).</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_StockIssuedDuringPeriodValueShareBasedCompensationGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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://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 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(30))<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(31))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-12<br><br>Reference 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(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479170/946-210-S99-2<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 11: 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 12: 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 13: 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 14: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480418/310-10-S99-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockCommonShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of previously issued common shares repurchased by the issuing entity and held in treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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>13
<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="2"><div style="width: 200px;"><strong>Condensed 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">$ 60,434<span></span>
</td>
<td class="nump">$ 89,070<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income to net cash 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 and amortization</a></td>
<td class="nump">14,249<span></span>
</td>
<td class="nump">14,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_DeferredIncomeTaxExpenseBenefit', window );">Deferred Income Taxes</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(5,212)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock-based compensation</a></td>
<td class="nump">2,313<span></span>
</td>
<td class="nump">3,155<span></span>
</td>
</tr>
<tr class="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)/Loss on disposal of property, plant and equipment</a></td>
<td class="num">(57)<span></span>
</td>
<td class="nump">2,122<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNoncashIncomeExpense', window );">Other non-cash adjustments</a></td>
<td class="nump">117<span></span>
</td>
<td class="nump">121<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingAssetsAbstract', window );"><strong>Changes in operating assets and liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable</a></td>
<td class="num">(302,708)<span></span>
</td>
<td class="num">(332,333)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="nump">30,863<span></span>
</td>
<td class="num">(16,796)<span></span>
</td>
</tr>
<tr class="ro">
<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 assets</a></td>
<td class="nump">2,161<span></span>
</td>
<td class="num">(319)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsPayable', window );">Accounts payable</a></td>
<td class="nump">4,187<span></span>
</td>
<td class="nump">26,238<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities', window );">Accrued expenses and other liabilities</a></td>
<td class="nump">15,278<span></span>
</td>
<td class="nump">12,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_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable', window );">Income taxes receivable/payable</a></td>
<td class="nump">19,150<span></span>
</td>
<td class="nump">33,715<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 operating activities</a></td>
<td class="num">(154,013)<span></span>
</td>
<td class="num">(174,044)<span></span>
</td>
</tr>
<tr class="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 );">Expenditures for property, plant and equipment</a></td>
<td class="num">(79,486)<span></span>
</td>
<td class="num">(37,720)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireIntangibleAssets', window );">Purchased intangibles</a></td>
<td class="num">(635)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 sales of property, plant and equipment</a></td>
<td class="nump">156<span></span>
</td>
<td class="nump">106<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash used in investing activities</a></td>
<td class="num">(79,965)<span></span>
</td>
<td class="num">(37,614)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>FINANCING ACTIVITIES</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromLinesOfCredit', window );">Borrowings under line of credit</a></td>
<td class="nump">257,047<span></span>
</td>
<td class="nump">258,500<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RepaymentsOfLinesOfCredit', window );">Principal payments under line of credit</a></td>
<td class="num">(15,700)<span></span>
</td>
<td class="num">(41,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_PaymentsForRepurchaseOfCommonStock', window );">Repurchases of common stock</a></td>
<td class="num">(4,008)<span></span>
</td>
<td class="num">(5,145)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions', window );">Proceeds from employee stock purchase and option plans</a></td>
<td class="nump">300<span></span>
</td>
<td class="nump">397<span></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_trex_PaymentsForProceedsFromFinancingCosts', window );">Financing costs</a></td>
<td class="nump">10<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash provided by (used in) financing activities</a></td>
<td class="nump">237,649<span></span>
</td>
<td class="nump">212,752<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Net decrease in cash and cash equivalents</a></td>
<td class="nump">3,671<span></span>
</td>
<td class="nump">1,094<span></span>
</td>
</tr>
<tr class="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 and cash equivalents, beginning of period</a></td>
<td class="nump">1,292<span></span>
</td>
<td class="nump">1,959<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash and cash equivalents, end of period</a></td>
<td class="nump">4,963<span></span>
</td>
<td class="nump">3,053<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SupplementalCashFlowInformationAbstract', window );"><strong>Supplemental Disclosure:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestPaidNet', window );">Cash paid for interest, net of capitalized interest</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxesPaidNet', window );">Cash paid for income taxes, net</a></td>
<td class="nump">2,003<span></span>
</td>
<td class="nump">1,444<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract', window );"><strong>Supplemental non-cash investing and financing 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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_CapitalExpendituresInAccountsPayableAndAccruedExpenses', window );">Capital expenditures in accounts payable and accrued expenses</a></td>
<td class="nump">$ 20,834<span></span>
</td>
<td class="nump">$ 851<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_trex_CapitalExpendituresInAccountsPayableAndAccruedExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Capital expenditures in accounts payable and accrued expenses.</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;">trex_CapitalExpendituresInAccountsPayableAndAccruedExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_trex_PaymentsForProceedsFromFinancingCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Payments for (proceeds from) financing costs.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">trex_PaymentsForProceedsFromFinancingCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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/2147477401/830-230-45-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(1)(Note 1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 740<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-9<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DeferredIncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 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_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_IncomeTaxesPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after refund, of cash paid to foreign, federal, state, and local jurisdictions as income tax.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2A<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 23<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-23<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-22<br><br>Reference 4: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxesPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate amount of 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://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_IncreaseDecreaseInAccountsPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 accrued expenses, and obligations 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 28<br> -Subparagraph (a)<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_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 taxing authorities for taxes that are based on the reporting entity's earnings, net of amounts receivable from taxing authorities for refunds of overpayments or recoveries of income taxes.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<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_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-28<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingAssetsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncreaseDecreaseInOperatingAssetsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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_InterestPaidNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-17<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-25<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482913/230-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestPaidNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from financing 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_PaymentsForRepurchaseOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow to reacquire common stock during the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 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_PaymentsForRepurchaseOfCommonStock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PaymentsToAcquireIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow to acquire asset without physical form usually arising from contractual or other legal rights, excluding 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> -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_PaymentsToAcquireIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 issuance of shares under share-based payment arrangement. Includes, but is not limited to, option exercised.</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 14<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 230<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-14<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2A<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 718<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProceedsFromLinesOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 contractual arrangement with the lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 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 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_ProceedsFromLinesOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 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 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 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 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 9: 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 10: 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 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-11<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478009/946-205-45-3<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 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(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 17: 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 18: 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 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 942<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477314/942-235-S99-1<br><br>Reference 30: 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 31: 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 32: 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 33: 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 34: 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 35: 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 36: 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 37: 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_RepaymentsOfLinesOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 payment of an obligation from a lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482740/230-10-45-15<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RepaymentsOfLinesOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SupplementalCashFlowInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SupplementalCashFlowInformationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<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="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)</a></td>
<td class="nump">$ 60,434<span></span>
</td>
<td class="nump">$ 89,070<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 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 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 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 10: 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 11: 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 12: 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 13: 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 14: 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 15: 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 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: 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 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 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 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 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 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)(4)(iii)(A))<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 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 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 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 32: 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 33: 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 34: 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 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<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>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>
<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_trex_Rule10B51ArrModifiedFlag', window );">Rule 10b5-1 Arrangement Modified</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_trex_NonRule10B51ArrModifiedFlag', window );">Non-Rule 10b5-1 Arrangement Modified</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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_trex_NonRule10B51ArrModifiedFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 rule 10b51 arr modified flag.</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;">trex_NonRule10B51ArrModifiedFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</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_trex_Rule10B51ArrModifiedFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Rule10b51 arr modified flag.</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;">trex_Rule10B51ArrModifiedFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<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>Business and Organization<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_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract', window );"><strong>Organization, Consolidation and Presentation of Financial Statements [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NatureOfOperations', window );">Business and Organization</a></td>
<td class="text"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">1.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">BUSINESS AND ORGANIZATION  </span></div></div><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Trex Company, Inc. (Trex or Company), is the world&#8217;s largest manufacturer of high-performance, low-maintenance wood-alternative decking and railing products and a leader in outdoor living products and accessories, marketed under the brand name Trex</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, with more than 30 years of product experience. A majority of its products are manufactured in a proprietary process that combines reclaimed wood fibers and scrap polyethylene. The Company is incorporated in Delaware. The principal executive offices are located at 2500 Trex Way, Winchester, Virginia 22601, and the telephone number at that address is (540) 542-6300. The Company operates in a </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_e82e3e21-2405-4a65-a1b8-84024eabffa2;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">single</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> reportable segment.</span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NatureOfOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward.</p></div>
<a href="javascript:void(0);" onclick="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> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org/275/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-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_NatureOfOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<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>Basis of Presentation<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_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract', window );"><strong>Organization, Consolidation and Presentation of Financial Statements [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock', window );">Basis of Presentation</a></td>
<td class="text"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">2.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">BASIS OF PRESENTATION </span></div></div><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with accounting principles generally accepted in the United States for interim financial information and U.S. Securities and Exchange Commission instructions to Form 10-Q and Article 10 of Regulation S-X and, accordingly, the accompanying unaudited condensed consolidated financial statements do not include all of the information and notes required by accounting principles generally accepted in the United States for complete financial statements. In the opinion of management, all adjustments (consisting of normal and recurring adjustments, except as otherwise described herein) considered necessary for a fair presentation have been included in the accompanying unaudited condensed consolidated financial statements. Certain reclassifications have been made to prior period balances to conform to current year presentation. The unaudited condensed consolidated financial statements include the accounts of the Company for all periods presented.</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The unaudited consolidated results of operations for the three months ended March 31, 2025, are not necessarily indicative of the results that may be expected for the fiscal year ending December 31, 2025. The Company&#8217;s results of operations are affected by a number of factors, including, but not limited to, the cost to manufacture and distribute products, cost of raw materials, inflation, tariffs, consumer spending and preferences, interest rates, the impact of any supply chain disruptions, economic conditions, and/or any adverse effects from global health pandemics and geopolitical conflicts.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">These unaudited condensed consolidated financial statements should be read in conjunction with the audited consolidated financial statements and notes thereto included in the Annual Report of Trex Company, Inc. on Form 10-K for the year ended December 31, 2024, as filed with the U.S. Securities and Exchange Commission.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  </span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for organization, consolidation and basis of presentation of financial statements disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480424/946-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480424/946-10-50-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 810<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/810/tableOfContent<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/205/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<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>Recently Adopted Accounting Standards<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_AccountingChangesAndErrorCorrectionsAbstract', window );"><strong>Accounting Changes and Error Corrections [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_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock', window );">Recently Adopted Accounting Standards</a></td>
<td class="text"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">3.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">RECENTLY ADOPTED ACCOUNTING STANDARDS</span></div></div><p style="text-indent:36pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In November 2023, the Financial Accounting Standards Board (FASB) issued </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_293c138a-edf1-46a4-8a7f-330a4eb82af0;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Accounting Standards Update (ASU) No. 2023-07</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, &#8220;Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures.&#8221; The guidance requires disclosure of significant segment expenses which are regularly provided to the chief operating decision maker (CODM), the composition of and amount of other segment items, the CODM&#8217;s title and position within the organization, and how the CODM uses the reported measure(s) of segment&#8217;s profit or loss to assess the performance of the segment. In addition, on an interim basis, all segment profit or loss and asset disclosures currently required on an annual basis must be reported, as well as those required by Topic 280. The guidance allows for multiple measures of a segment&#8217;s profit or loss to be reported. Entities which have a single reportable segment must apply Topic 280 in its entirety. The guidance was effective for fiscal years beginning after December 15, 2023, and for interim periods beginning after December 15, 2024. Early adoption was permitted. Entities are required to apply the amendments of this update retrospectively for all prior periods presented in the financial statements. The Company </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">adopted</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> the standard in the quarterly period ended December 31, 2024. The Company applied the standard retrospectively and accordingly, prior periods were adjusted. Adoption of this guidance </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">did not impact</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> consolidated results of operations and financial position.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountingChangesAndErrorCorrectionsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccountingChangesAndErrorCorrectionsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476173/280-10-65-1<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 1<br> -Subparagraph (b)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-7<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 5: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 9: 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 (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-1<br><br>Reference 11: 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 12: 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 13: 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)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<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 (g)(2)(iv)<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 (h)(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 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SAB Topic 11.M.Q2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480530/250-10-S99-5<br><br>Reference 17: 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)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 19: 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 (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 20: 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 (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<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/2147483194/926-20-65-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<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/2147483194/926-20-65-2<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483194/926-20-65-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480530/250-10-S99-6<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 26: 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)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Topic 250<br> -Publisher FASB<br> -URI https://asc.fasb.org/250/tableOfContent<br><br>Reference 28: 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)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-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_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>19
<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>New Accounting Standards Not Yet Adopted<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_trex_NewAccountingStandardsNotYetAdoptedAbstract', window );"><strong>New Accounting Standards Not Yet Adopted [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock', window );">New Accounting Standards Not Yet Adopted</a></td>
<td class="text"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">4.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">NEW ACCOUNTING STANDARDS NOT YET ADOPTED</span></div></div><p style="text-indent:36pt;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In November 2024, the FASB issued ASU No. 2024-03, &#8220;Income Statement &#8211; Reporting Comprehensive Income &#8211; Disaggregation Disclosures.&#8221; This guidance requires more detailed disclosure about the types of expenses presented within the expense captions of the financial statements. Specifically, disclosure of purchases of inventory, employee compensation, depreciation, and intangible asset amortization are required on both an interim and annual basis. In addition, a qualitative description of remaining amounts in relevant expense captions which have not separately been disaggregated will be required on an interim and annual basis. On an annual basis, disclosure of an entity&#8217;s definition of selling expenses and the amount of selling expenses is required. The amendments to this update are effective for annual reporting periods beginning after December 15, 2026, and interim periods</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">beginning after December 15, 2027. Early adoption of this update is permitted. The amendments to this update should be applied prospectively to financial statements issued for reporting periods after the effective date of the update or retrospectively to any or all prior periods presented in the financial statements. The Company believes adoption will result in expanded financial statement footnote disclosure but does not believe adoption of this update will have a material impact on its consolidated results of operations. The Company is continuing to evaluate the impacts of adoption.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:36pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In December 2023, the FASB issued ASU No. 2023-09, </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">&#8220;Income Taxes (Topic 740): Improvements to Income Tax Disclosures.&#8221;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> The guidance requires public entities to disclose additional categories of information related to federal, state, and foreign income taxes and additional details related to reconciling items should they meet a quantitative threshold. The guidance requires disclosure of income taxes paid (net of refunds received) disaggregated by federal, state, and foreign taxes and to disaggregate the information by jurisdiction based on quantitative thresholds. The guidance is effective for fiscal year beginning after December 15, 2024. Early adoption was permitted. The guidance should be applied on a prospective basis, retrospective application is permitted. The Company does not expect adoption of the guidance to have a material effect on its consolidated results of operations and financial position.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_trex_DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Description of new accounting standards not yet adopted.</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;">trex_DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</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_trex_NewAccountingStandardsNotYetAdoptedAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>New accounting standards not yet adopted [Abstract]</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;">trex_NewAccountingStandardsNotYetAdoptedAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<FILENAME>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>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"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">5.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">INVENTORIES </span></div></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Inventories valued at LIFO (last-in, first-out), consist of the following (in thousands):</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  </span></p><p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,<br/>2025</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31,<br/>2024</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Finished goods</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">151,077</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">183,670</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Raw materials</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">75,011</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">73,281</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total FIFO (first-in, first-out) inventories</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">226,088</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">256,951</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Reserve to adjust inventories to LIFO value</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">49,669</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">49,669</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total LIFO inventories</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">176,419</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">207,282</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table></div><p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company utilizes the LIFO method of accounting, which generally provides for the matching of current costs with current revenues. However, under the LIFO method, reductions in annual inventory balances may cause a portion of the Company&#8217;s cost of sales to be based on historical costs rather than current year costs (LIFO liquidation). Reductions in interim inventory balances expected to be replenished by year-end do not result in a LIFO liquidation. Accordingly, interim LIFO calculations are based, in part, on management&#8217;s estimates of expected year-end inventory levels and costs and may differ from actual results. Since inventory levels and costs are subject to factors beyond management&#8217;s control, interim results are subject to the final year-end LIFO inventory valuation. There were no LIFO inventory liquidations or related impact on the cost of sales in the three months ended March 31, 2025.</span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 330<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/330/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<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>Prepaid Expenses and Other Assets<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_TextBlockAbstract', window );"><strong>Text Block [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_PrepaidAndOtherCurrentAssetsDisclosureTextBlock', window );">Prepaid Expenses and Other Assets</a></td>
<td class="text"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">6.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">PREPAID EXPENSES AND OTHER ASSETS</span></div></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Prepaid expenses and other assets consist of the following (in thousands):</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,<br/>2025</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31,<br/>2024</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Prepaid expenses</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">19,242</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">21,353</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">502</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">625</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total prepaid expenses and other assets</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">19,744</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">21,978</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></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_trex_PrepaidAndOtherCurrentAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 pertaining to prepaid and other current assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">trex_PrepaidAndOtherCurrentAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>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>Goodwill and Other Intangible Assets, Net<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_GoodwillAndIntangibleAssetsDisclosureAbstract', window );"><strong>Goodwill and Intangible Assets Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock', window );">Goodwill and Other Intangible Assets, Net</a></td>
<td class="text"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">7.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">GOODWILL AND OTHER INTANGIBLE ASSETS, NET  </span></div></div><p style="text-indent:22.5pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The carrying amount of goodwill at March 31, 2025, and December 31, 2024, was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">14.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million. The Company&#8217;s intangible assets consist of domain names and internal use software. At March 31, 2025, and December 31, 2024, intangible assets were $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">12.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million and accumulated amortization was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, respectively. Intangible asset amounts were determined based on the estimated economics of the asset and are amortized over the estimated useful lives on a straight-line basis over </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">15</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years for domain names and </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">10</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years for internal use software, which approximates the pattern in which the economic benefits are expected to be received. The Company evaluates the recoverability of intangible assets periodically and considers events or circumstances that may warrant revised estimates of useful lives or that may indicate an impairment. Intangible asset amortization expense for the three months ended March 31, 2025, and March 31, 2024, was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/350-30/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/350-20/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<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>Accrued Expenses and Other Liabilities<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_PayablesAndAccrualsAbstract', window );"><strong>Payables and Accruals [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock', window );">Accrued Expenses and Other Liabilities</a></td>
<td class="text"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">8.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">ACCRUED EXPENSES AND OTHER LIABILITIES</span></div></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Accrued expenses and other liabilities consist of the following (in thousands):</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,<br/>2025</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31,<br/>2024</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Sales and marketing</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">39,522</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">22,874</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Income taxes</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">20,067</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">917</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Compensation and benefits</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">14,600</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">16,132</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span><span style="-sec-ix-hidden:F_e2aa5d31-7ed7-42b1-955d-2a49e48c0b78;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating</span></span></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span><span><span style="-sec-ix-hidden:F_ec91e9ce-d153-4e5e-aa4a-835f2d40fa80;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">lease liabilities</span></span></span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">11,093</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10,800</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Capital projects</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8,216</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">13,274</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Manufacturing costs</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4,000</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,904</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">7,929</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5,978</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total accrued expenses and other liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">105,427</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">72,879</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></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_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 accounts payable, accrued expenses, and other liabilities that are classified as current at the end of the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 720<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483384/720-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_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<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>Debt<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 );">Debt</a></td>
<td class="text"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">9.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">DEBT </span></div></div><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Revolving Credit Facility</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;text-decoration:underline solid;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Indebtedness prior to October 10, 2024.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> On May 18, 2022, the Company entered into a Credit Agreement (Credit Agreement) with certain lending parties thereto (Lenders) to amend and restate the Fourth Amended and Restated Credit Agreement dated as of November 5, 2019. Under the Credit Agreement, the Lenders agreed to provide the Company with one or more Revolving Loans in a collective maximum principal amount of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">400,000,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> (Loan Limit) throughout the term, which ends </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">May 18, 2027</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> (Term). Included within the Loan Limit are sublimits for a Letter of Credit facility in an amount not to exceed $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">60,000,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">; and Swing Line Loans in an aggregate principal amount at any time outstanding not to exceed $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">20,000,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">. The Revolving Loans, the Letter of Credit facility and the Swing Line Loans are for the purpose of raising working capital and supporting general business operations.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">On December 22, 2022, the Company entered into a First Amendment to the Credit Agreement (First Amendment). As a part of the First Amendment, the Credit Agreement was amended and restated to provide for an additional Revolving B Loan (as hereinafter defined). Under the First Amendment, the Lenders agreed to provide the Company with a Revolving B Loan consisting of one or more revolving loans in a collective maximum principal amount of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">150,000,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> (Revolving B Loan Limit) throughout the term, which ended December 22, 2024 (Revolving B Loan Term). Previously, under the Credit Agreement, there was no Revolving B Loan. The First Amendment also provided that TD Bank, N.A. would serve as Syndication Agent.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In conjunction with the First Amendment, on December 22, 2022, the Credit Agreement was amended and restated to refer to the original loan as the Revolving A Loan. The amended and restated Credit Agreement was made an Exhibit A to the First Amendment. All of the terms of the Credit Agreement apply to the Revolving B Loan.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The amended Credit Agreement provides the Company, in the aggregate, the ability to borrow an amount up to the Revolving A Loan Limit during the Revolving A Loan Term (which ends May 18, 2027) and Revolving B Loan Limit during the Revolving B Loan Term. The Company is not obligated to borrow any amount under the revolving loans. Within the respective loan limit, the Company may borrow, repay and reborrow at any time or from time to time while the notes issued pursuant to the Credit Agreement are in effect.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Base Rate Loans (as defined in the Credit Agreement) under the Revolving A Loan and the Swing Line Loans accrue interest at the Base Rate plus the Applicable Rate (as defined in the Credit Agreement) and Term SOFR Loans for the Revolving Loans accrue interest at the rate per annum equal to the sum of Term SOFR for such interest period plus the Applicable Rate (as defined in the Credit Agreement). The Base Rate for any day is a fluctuating rate per annum equal to the highest of (a) </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">the Federal Funds Rate plus </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.50</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, (b) the rate of interest in effect for such day as publicly announced from time to time by BOA as its prime rate, and (c) </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">the Term SOFR plus </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">% </span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">subject to certain interest rate floors. Repayment of all then outstanding principal, interest, fees and costs is due at the end of the Term.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">With respect to Revolving B Loans (as defined in the First Amendment), for any day, the rate per annum is a tiered pricing based upon the Consolidated Debt to Consolidated EBITDA Ratio. The applicable rate for Revolving B Loans that are Base Rate Loans range between </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.20</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">% and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2.15</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">% and the applicable rate for Revolving B Loans that are Term SOFR/Term SOFR Daily Floating Rate range between </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.20</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">% and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.15</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Under the terms of the Security and Pledge Agreement, the Company, subject to certain permitted encumbrances, as collateral security for the above-stated loans and all other present and future indebtedness of the Company owing to the Lenders grants a continuing security interest in certain collateral described and defined in the Security and Pledge Agreement but excluding the Excluded Property (as defined in the Security and Pledge Agreement).</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;text-decoration:underline solid;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Indebtedness on and after October 10, 2024.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> On October 10, 2024, the Company, entered into a Second Amendment to the Credit Agreement (Second Amendment) with certain lending parties thereto (Lenders) to amend that Credit Agreement dated as of May 18, 2022, as amended by that certain First Amendment dated as of December 22, 2022.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Second Amendment provides the Company with Revolving A Loans in the maximum principal amount of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">400,000,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> (Revolving A Loans), Revolving B Loans in the maximum principal amount of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">150,000,000</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> (Revolving B Loans), and Letters of Credit and Swing Line Loans (as defined in the Credit Agreement). The Second Amendment extends the maturity date of the Revolving B Loans from December 22, 2024 to </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">December 22, 2026</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Base Rate Loans (as defined in the Credit Agreement) under the Revolving A Loan and the Swing Line Loans accrue interest at the Base Rate plus the Applicable Rate (as defined in the Credit Agreement) and Term SOFR Loans for the Revolving Loans accrue interest at the rate per annum equal to the sum of Term SOFR for such interest period plus the Applicable Rate (as defined in the Credit Agreement). The Base Rate for any day is a fluctuating rate per annum equal to the highest of (a) </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">the Federal Funds Rate plus </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.50</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, (b) the rate of interest in effect for such day as publicly announced from time to time by BOA as its prime rate, and (c) </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">the Term SOFR plus </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> subject to certain interest rate floors. Repayment of all then outstanding principal, interest, fees and costs is due at the end of the Term (as defined in the Credit Agreement).</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">With respect to Revolving B Loans (as defined in the Credit Agreement), for any day, the rate per annum is a tiered pricing based upon the Consolidated Debt to Consolidated EBITDA Ratio. The applicable rate for Revolving B Loans that are Base Rate Loans range between </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.20</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">% and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.15</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%. and the applicable rate for Revolving B Loans that are Term SOFR/Term SOFR Daily Floating Rate range between </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1.20</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">% and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2.15</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%.</span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company had $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">443.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million in borrowings outstanding under its revolving credit facility and available borrowing capacity of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">106.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million at March 31, 2025. The weighted average interest rate on the revolving credit facility was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5.27</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">% as of March 31, 2025.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:18pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Compliance with Debt Covenants and Restrictions</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Pursuant to the terms of the Credit Agreement, the Company is subject to certain loan compliance covenants. The Company was in compliance with all covenants as of March 31, 2025. Failure to comply with the financial covenants could be considered a default of repayment obligations and, among other remedies, could accelerate payment of any amounts outstanding.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-6<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-6<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477092/405-40-50-1<br><br>Reference 8: 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 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 10: 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 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482925/835-30-45-2<br><br>Reference 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> -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 (g)<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 (i)<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 1C<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1C<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 1C<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1C<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 1C<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1C<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 (b)<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 1I<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<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 1I<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-1I<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 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>25
<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>Leases<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_LeasesAbstract', window );"><strong>Leases [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_LesseeOperatingLeasesTextBlock', window );">Leases</a></td>
<td class="text"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">10.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">LEASES </span></div></div><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company leases manufacturing and training facilities, storage warehouses, office space, and certain office and plant equipment under various operating leases. The Company&#8217;s operating leases have remaining lease terms of up to </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">10</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years. Lease terms may include options to extend or terminate the lease when it is reasonably certain that the Company will exercise that option.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">For the three months ended March 31, 2025 and March 31, 2024, total operating lease expense was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2.0</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, respectively. The weighted average remaining lease term at March 31, 2025 and December 31, 2024 was </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">6.1</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years and </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">6.3</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years, respectively. The weighted average discount rate at March 31, 2025 and December 31, 2024 was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4.60</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">% and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4.57</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%, respectively.</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table includes supplemental cash flow information for the three months ended March 31, 2025 and March 31, 2024, and supplemental balance sheet information at March 31, 2025 and December 31, 2024 related to operating leases (in thousands):</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31,</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Supplemental cash flow information</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cash paid for amounts included in the measurement of<br/>&#160;&#160;&#160;operating lease liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,661</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,007</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating ROU assets obtained in exchange for lease<br/>&#160;&#160;&#160;liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">692</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">578</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Supplemental balance sheet information</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,<br/>2025</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31,<br/>2024</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating lease ROU assets</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">49,976</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">52,195</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating lease liabilities:</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accrued expenses and other current liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">11,093</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10,800</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating lease liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">39,788</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">41,979</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total operating lease liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">50,881</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">52,779</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table summarizes maturities of operating lease liabilities at March 31, 2025 (in thousands):</span></p><p style="margin-left:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:60.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:80.236%;box-sizing:content-box;"></td>
          <td style="width:1.94%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:15.823%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Maturities of operating lease liabilities</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2025</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8,518</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2026</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">11,237</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2027</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10,641</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2028</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">9,650</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2029</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4,385</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Thereafter</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">15,555</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total lease payments</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">59,986</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Less imputed interest</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">9,105</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total operating lease liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">50,881</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></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_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeasesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/842-20/tableOfContent<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeasesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<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>Financial Instruments<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_InvestmentsAllOtherInvestmentsAbstract', window );"><strong>Investments, All Other Investments [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_FinancialInstrumentsDisclosureTextBlock', window );">Financial Instruments</a></td>
<td class="text"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">11.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">FINANCIAL INSTRUMENTS</span></div></div><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company considers the recorded value of its financial assets and liabilities, consisting primarily of cash and cash equivalents, accounts receivable, accounts payable, accrued expenses, other current liabilities, and debt to approximate the fair value of the respective assets and liabilities on the Condensed Consolidated Balance Sheets at March 31, 2025 and December 31, 2024.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinancialInstrumentsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 financial instruments. This disclosure includes, but is not limited to, fair value measurements of short and long term marketable securities, international currencies forward contracts, and auction rate securities. Financial instruments may include hedging and non-hedging currency exchange instruments, derivatives, securitizations and securities available for sale at fair value. Also included are investment results, realized and unrealized gains and losses as well as impairments and risk management disclosures.</p></div>
<a href="javascript:void(0);" onclick="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_FinancialInstrumentsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentsAllOtherInvestmentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_InvestmentsAllOtherInvestmentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<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>Stockholders' Equity<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_EquityAbstract', window );"><strong>Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock', window );">Stockholders' Equity</a></td>
<td class="text"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">12.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">STOCKHOLDERS&#8217; EQUITY </span></div></div><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Earnings Per Share</span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table sets forth the computation of basic and diluted earnings per share (in thousands, except share and per share data):</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:75.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:49.92%;box-sizing:content-box;"></td>
          <td style="width:2.1%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:20.939999999999998%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:2.1%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:20.939999999999998%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31,</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Numerator:</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net income available to common shareholders</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">60,434</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">89,070</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Denominator:</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Basic weighted average shares outstanding</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">107,180,665</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">108,640,168</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0.01in;text-indent:10pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Effect of dilutive securities:</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Stock appreciation rights and options</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">34,543</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">71,202</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Restricted stock</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">68,876</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">79,255</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Diluted weighted average shares outstanding</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">107,284,084</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">108,790,625</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Basic earnings per share</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.56</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.82</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Diluted earnings per share</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.56</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.82</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Diluted earnings per share is computed using the weighted average number of shares determined for the basic earnings per share computation plus the dilutive effect of common stock equivalents using the treasury stock method. </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The computation of diluted earnings per share excludes the following potentially dilutive securities because the effect would be anti-dilutive:  </span></span><span style=""></span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:59.768%;box-sizing:content-box;"></td>
          <td style="width:1.22%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:16.897%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.22%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:16.897%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31,</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Stock appreciation rights</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">129,069</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">55,132</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Restricted stock</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">92,795</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">48,597</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Stock Repurchase Program</span></p><p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">On May 4, 2023, the Trex Board of Directors adopted a new stock repurchase program (2023 Stock Repurchase Program) of up to </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10.8</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million shares of its outstanding common stock. The 2023 Stock Repurchase Program has no set expiration date. During the three months ended March 31, 2025, the Company did </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">no</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">t repurchase any shares of its outstanding common stock under the 2023 Stock Repurchase Program.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityNoteDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-14<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477968/946-235-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477968/946-235-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478448/946-505-50-6<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480237/815-40-50-6<br><br>Reference 8: 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 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(e)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 505<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/505/tableOfContent<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-13<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-14<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-14<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 16<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-16<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-18<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-18<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 505<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityNoteDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<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>Revenue From Contracts With Customers<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 From Contracts With Customers</a></td>
<td class="text"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">13.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">REVENUE FROM CONTRACTS WITH CUSTOMERS</span></div></div><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company principally generates revenue from the manufacture and sale of its high-performance, low-maintenance, eco-friendly wood-alternative composite decking and railing products and accessories. Substantially all of its revenues are from contracts with customers, which are purchase orders of short-term duration of less than one year. Its customers, in turn, sell primarily to the residential market, which includes replacement, remodeling and new construction related to outdoor living products. The Company satisfies its performance obligations at a point in time. The shipment of each product is a separate performance obligation as the customer is able to derive benefit from each product shipped and no performance obligation remains after shipment. Upon shipment of the product, the customer obtains control over the distinct product and Trex satisfies its performance obligation. Any performance obligation that remains unsatisfied at the end of a reporting period is part of a contract that has an original expected duration of one year or less. Any variable consideration related to the unsatisfied performance obligation is allocated wholly to the unsatisfied performance obligation, is recognized when the product ships and the performance obligation is satisfied and is included in &#8220;Accrued expenses and other liabilities, Sales and marketing&#8221; in Note 8 to the Condensed Consolidated Financial Statements. For the three months ended March 31, 2025 and March 31, 2024, the Company&#8217;s net sales were $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">339,993</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">373,635</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">, respectively. During these periods, revenues were recognized at a point in time upon transfer of its outdoor living products under variable consideration contracts into the building products market.</span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 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>29
<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>Stock-Based Compensation<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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Disclosure of Compensation Related Costs, Share-based Payments [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock', window );">Stock-Based Compensation</a></td>
<td class="text"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">14.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">STOCK-BASED COMPENSATION </span></div></div><p style="text-indent:22.5pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">At the annual meeting of stockholders of the Company held on May 4, 2023, the Company&#8217;s stockholders approved the Trex Company, Inc. 2023 Stock Incentive Plan (Plan). The Company&#8217;s board of directors unanimously approved the Plan on April 10, 2023, subject to stockholder approval. The Plan amends and restates in its entirety the Trex Company, Inc. 2014 Stock Incentive Plan (2014 Plan), which was last approved by the Company&#8217;s stockholders at the annual meeting held on April 30, 2014. The Plan, which will be administered by the compensation committee of the board of directors, provides for the grant of stock options, restricted stock, restricted stock units, stock appreciation rights and unrestricted stock, which are referred to collectively as &#8220;awards.&#8221; Awards may be granted under the Plan to officers, directors (including non-employee directors) and other employees of the Company or any subsidiary thereof, to any adviser, consultant, or other provider of services to the Company (and any employee thereof), and to any other individuals who are approved by the board of directors as eligible to participate in the Plan. Only employees of the Company or any subsidiary thereof are eligible to receive incentive stock options. Subject to certain adjustments as provided in the Plan, the total number of shares of common stock available for future grants under the Plan is </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,669,418</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> shares.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:22.5pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table summarizes the Company&#8217;s stock-based compensation grants for the three months ended March 31, 2025:</span></p><p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.98%;box-sizing:content-box;"></td>
          <td style="width:1.16%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:13.36%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.88%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Stock Awards<br/>Granted</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Weighted-<br/>Average<br/>Grant Price<br/>Per Share</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Time-based restricted stock units</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">65,750</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">67.29</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Performance-based restricted stock units (a)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">97,063</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">65.34</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Stock appreciation rights</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">43,597</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">67.33</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div class="item-list-element-wrapper" style="margin-left:0.25in;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.25in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:3.447919145106397%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(a)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Includes </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">75,210</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> of target performance-based restricted stock unit awards granted during the three months ended March 31, 2025, and adjustments of </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,093</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">20,760</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> to grants due to the actual performance level achieved for restricted stock and restricted stock units award</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">ed in 2024 and 2023, r</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">espectively.</span></div></div></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The fair value of each SAR is estimated on the date of grant using a </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_b690300c-0564-496f-a12d-3468f401e2cd;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Black-Scholes option-pricing formula.</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> For SARs issued in the three months ended March 31, 2025 and March 31, 2024, the data and assumptions shown in the following table were used:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="margin-left:18pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.882%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.882%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31, 2025</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31, 2024</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Weighted-average fair value of grants</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">33.49</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">44.83</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Dividend yield</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Average risk-free interest rate</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4.3</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4.3</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Expected term (years)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5</span></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5</span></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Expected volatility</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">51.7</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">51.2</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         </tr>
        </table></div><p style="margin-left:18pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Company recognizes stock-based compensation expense ratably over the period from the grant date to the earlier of: (1) the vesting date of the award, or (2) the date the grantee is eligible to retire without forfeiting the award. For performance-based restricted stock and performance-based restricted stock units, expense is recognized ratably over the performance and vesting period of each tranche based on management&#8217;s judgment of the ultimate award that is likely to be paid out based on the achievement of the</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">predetermined </span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">performance measures. For the employee stock purchase plan, compensation expense is recognized related to the discount on purchases. Stock-based compensation expense is included in &#8220;Selling, general and administrative expenses&#8221; in the Condensed Consolidated Statements of Comprehensive Income.</span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> The following table summarizes the Company&#8217;s stock-based compensation expense (in thousands):  </span></span><span style=""></span></p><div style="font-size:10pt;font-family:Times New Roman;"><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31,</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Stock appreciation rights</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">295</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">271</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Time-based restricted stock and restricted stock units</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">826</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,074</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Performance-based restricted stock and restricted stock units</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,140</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,642</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Employee stock purchase plan</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">52</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">166</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total stock-based compensation</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,313</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,153</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table></div><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Total unrecognized compensation cost related to unvested awards as of March 31, 2025 was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">17.3</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million. The cost of these unvested awards is being recognized over the requisite vesting period of each award.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 718<br> -SubTopic 10<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/2147480429/718-10-50-2<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/718/tableOfContent<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<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/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (l)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-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_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<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>Income Taxes<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_IncomeTaxDisclosureAbstract', window );"><strong>Income Tax Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxDisclosureTextBlock', window );">Income Taxes</a></td>
<td class="text"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">15.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">INCOME TAXES</span></div></div><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company&#8217;s effective tax rate for the three months ended March 31, 2025 and March 31, 2024, was </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">25.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">% and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">25.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">%, which resulted in income tax expense of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">21.2</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">29.9</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, respectively.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">During the three months ended March 31, 2025 and March 31, 2024, the Company realized $(</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.1</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">) million and $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million, respectively, of excess tax expense and excess tax benefit from stock-based awards and recorded a corresponding expense and benefit to income tax expense.</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company analyzes its deferred tax assets each reporting period, considering all available positive and negative evidence in determining the expected realization of those deferred tax assets. As of March 31, 2025, the Company maintains a valuation allowance of $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2.6</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million against deferred tax assets primarily related to state tax credits it estimates will expire before they are realized.</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company operates in multiple tax jurisdictions, and, in the normal course of business, its tax returns are subject to examination by various taxing authorities. Such examinations may result in future assessments by these taxing authorities, and the Company accrues a liability when it believes that it is more likely than not that benefits of tax positions will not be realized. The Company believes that adequate provisions have been made for all tax returns subject to examination. As of March 31, 2025, for certain tax jurisdictions tax years </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_71bdfe16-c7bd-4372-91d0-8fa8ccf132d3;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">2020 through 2024</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> remain subject to examination. The Company believes that adequate provisions have been made for all tax returns subject to examination. Sales made to foreign distributors are not taxable in any foreign jurisdiction as the Company does not have a taxable presence in any foreign jurisdiction.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for income tax.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><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 12C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12C<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12B<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 270<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477891/740-270-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 6.I.5.Q1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480990/946-20-50-13<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 235<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/740/tableOfContent<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 14<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-14<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-21<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-17<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479360/740-10-S99-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482603/740-30-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<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>Segment Information<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 );">Segment Information</a></td>
<td class="text"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">16.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">SEGMENT INFORMATION</span></div></div><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company operates in </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">one</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> reportable segment, Trex Residential, with resource allocation and assessment of financial performance based on a consolidated basis.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Trex Residential manufactures composite decking and railing and related outdoor living products marketed under the brand name Trex</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">. The products are sold to its distributors and </span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">two</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> national retailers who, in turn, sell primarily to the residential market, which includes replacement, remodeling and new construction.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company&#8217;s reportable segments are determined in accordance with its internal management structure, which is based on operations. The Company has identified its President and Chief Executive Officer as the </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_abeb9af2-c314-4509-a5bf-4f65d81e3fad;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Chief Operating Decision Maker</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> (CODM). The Company&#8217;s CODM has final authority over resource allocation decisions and performance assessments and makes key operating decisions. </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The primary objective of the CODM is to optimize positive Company-wide performance and financial results. The CODM evaluates segment performance primarily based on net income and net sales. The CODM uses net income to assess performance and allocate resources as this measure provides insight into all aspects of the segment&#8217;s operations and overall success of the segment for a given period. The CODM also uses net sales to assess performance and allocate resources as this measure represents the amount of business the segment engaged in during a given period of time, is an indicator of market growth and acceptance of segment products, and represents the segment&#8217;s customers&#8217; spending habits along with the amount of product the segment sells relative to its competitors.</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> In addition, the CODM reviews significant segment expenses with a  primary focus on cost of sales and total selling, general, and administrative expenses. These measures are provided in the accompanying Condensed Consolidated Statements of Comprehensive Income. Segment assets are reported on the Condensed Consolidated Balance Sheets.</span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 48<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<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 6: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 54<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 54<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<br><br>Reference 10: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 54<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<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 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 14: 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 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 26C<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26C<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 26B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26B<br><br>Reference 17: 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 18: 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 19: 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 20: 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 21: 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 22: 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 23: 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 24: 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 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 (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>32
<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>Seasonality<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_TextBlockAbstract', window );"><strong>Text Block [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_SeasonalityDisclosureTextBlock', window );">Seasonality</a></td>
<td class="text"><p style="text-indent:-24.5pt;padding-left:24.5pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">17.	SEASONALITY</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The operating results for Trex have historically varied from quarter to quarter. Seasonal, erratic or prolonged adverse weather conditions may reduce the level of home improvement and construction activity and can shift sales of its products to a later period or decrease overall sales in affected locations. As part of its normal business practice and consistent with industry practice, Trex has historically offered incentive programs to its distributors and dealers to build inventory levels before the start of the prime deck-building season in order to ensure adequate availability of its product to meet anticipated seasonal consumer demand. The seasonal effects are often offset by the positive effect of the incentive programs.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_trex_SeasonalityDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Identifies seasonal trends affecting the demand for Trex products and quarterly net sales.</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;">trex_SeasonalityDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>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>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"><div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">18.</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">COMMITMENTS AND CONTINGENCIES</span></div></div><p id="ole_link15" style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span id="ole_link16"></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Product Warranty</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company warrants that for the applicable warranty period its products, when properly installed, used and maintained, will be free from material defects in workmanship and materials and its decking, cladding, fascia and railing products will not split, splinter, rot or suffer structural damage from termites or fungal decay.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Products sold on or after January 1, 2023: The warranty period for residential use is </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">50</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years for Transcend</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> decking, </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">35</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years for Select</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> decking and Universal Fascia, and </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">25</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years for Enhance</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> decking and Transcend, Select, Enhance and Signature</span><span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#174;</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> railing. The warranty period for commercial use is </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">10</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years, excluding Signature railing and Transcend cladding, which each have a warranty period of</span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> 25</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years. The Company further warrants that Trex Transcend, Trex Enhance and Trex Select decking and cladding and Universal Fascia products will not fade in color from light and weathering exposure more than a certain amount and will be resistant to permanent staining from food and beverage substances or mold and mildew, provided the stain is cleaned within seven days of appearance, for the warranty period referred to above. If there is a breach of such warranties, the Company has an obligation either to replace the defective product or refund the purchase price.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Products sold prior to January 1, 2023: The warranty period is </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">25</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years for residential use and </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">10</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years for commercial use. With respect to Trex Signature railing, the warranty period is </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">25</span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> years for both residential and commercial use. The Company further warrants that Trex Transcend, Trex Enhance, Trex Select and Universal Fascia products will not fade in color more than a certain amount and will be resistant to permanent staining from food substances or mold, provided the stain is cleaned within seven days of appearance, for the warranty period referred to above. If there is a breach of such warranties, the Company has an obligation either to replace the defective product or refund the purchase price.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company maintains a warranty reserve for the settlement of its product warranty claims. The Company accrues for the estimated cost of product warranty claims at the time revenue is recognized based on such factors as historical claims experience and estimated future claims. Management reviews and adjusts these estimates, if necessary, based on the differences between actual experience and historical estimates. Additionally, the Company accrues for warranty costs associated with occasional or unanticipated product quality issues if a loss is probable and can be reasonably estimated, as necessary.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company continues to receive and settle claims for decking products manufactured at its Nevada facility prior to 2007 that exhibit surface flaking and maintains a warranty reserve to provide for the settlement of these claims. Estimating the warranty reserve for surface flaking claims requires management to estimate the number of claims to be settled with payment and the average cost to settle each claim. The Company monitors surface flaking claims activity each quarter for indications that its estimates require revision.</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company believes its product warranty and surface flaking reserves at March 31, 2025 are sufficient to cover future warranty obligations. </span><span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following is a reconciliation of the Company&#8217;s product warranty and surface flaking reserves (in thousands):  </span></span><span style=""></span></p><div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:80.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:57.477%;box-sizing:content-box;"></td>
          <td style="width:1.399%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:10.776%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.399%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:10.776%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.399%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:10.776%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31, 2025</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Product Warranty</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Surface Flaking</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Beginning balance, January 1</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">15,596</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">7,239</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">22,835</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Provisions and changes in estimates</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,550</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,550</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Settlements made during the period</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,238</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">356</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,594</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Ending balance, March 31</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">16,908</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6,883</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">23,791</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p></div><div style="font-size:10pt;font-family:Times New Roman;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:80.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:57.477%;box-sizing:content-box;"></td>
          <td style="width:1.399%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:10.776%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.399%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:10.776%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.399%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:10.776%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31, 2024</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Product Warranty</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Surface Flaking</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Beginning balance, January 1</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">12,066</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10,112</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">22,178</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Provisions and changes in estimates</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,068</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,068</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Settlements made during the period</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">924</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">188</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,112</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Ending balance, March 31</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">13,210</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">9,924</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">23,134</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table></div><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Legal Matters</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The Company has lawsuits, as well as other claims, pending against it which are ordinary routine litigation and claims incidental to the business. Management has evaluated the merits of these lawsuits and claims and believes that their ultimate resolution will not have a material effect on the Company&#8217;s consolidated financial condition, results of operations, liquidity or competitive position.</span></p><p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;">Industrial Revenue Bonds</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">In October 2021, the Company announced plans to add a third manufacturing facility located in Little Rock, Arkansas (Little Rock). Construction on the new facility began in the second quarter of 2022. In connection with the construction of the new facility, during 2024 the Company and Little Rock entered into an agreement in which Little Rock agreed to issue up to $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">450</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million of its industrial revenue bonds (IRBs) for the purpose of constructing a manufacturing facility. Under the agreement, the Company transferred ownership of the facility to Little Rock and simultaneously leased the related asset from Little Rock. The Company is also the purchaser of the IRBs and, therefore, is the bondholder as well as the borrower/lessee of the Little Rock facility purchased with the IRB proceeds. As a result of the agreement, the Company was able to reduce the cost of certain state and local tax expenditures for twenty years. The Company has a purchase option included in the lease agreement for below the fair value of the asset, which prevents the transfer of the asset to Little Rock from being recognized as a sale. Furthermore, the Company has not derecognized the transferred asset and continues to recognize it in property, plant and equipment in the Consolidated Balance Sheets. The Company has the right and intends to set-off any obligations to make payments under the finance liability, with proceeds due from the IRBs. The liability and IRB asset are equal and are reported net in the Consolidated Balance Sheets. As of March 31, 2025, the gross asset and liability associated with the IRBs was $</span><span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">100</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> million.</span></p><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 405<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org/405-30/tableOfContent<br><br>Reference 2: 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 3: 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 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 954<br> -SubTopic 440<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478522/954-440-50-1<br><br>Reference 5: 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 6: 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>34
<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>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 );">Summary of Inventories</a></td>
<td class="text"><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Inventories valued at LIFO (last-in, first-out), consist of the following (in thousands):</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">  </span></p><p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,<br/>2025</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31,<br/>2024</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Finished goods</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">151,077</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">183,670</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Raw materials</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">75,011</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">73,281</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total FIFO (first-in, first-out) inventories</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">226,088</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">256,951</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Reserve to adjust inventories to LIFO value</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">49,669</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">49,669</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total LIFO inventories</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">176,419</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">207,282</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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>35
<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>Prepaid Expenses and Other Assets (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_TextBlockAbstract', window );"><strong>Text Block [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_PrepaidExpenseAndOtherAssetsCurrentTableTextBlock', window );">Summary of Prepaid Expenses and Other Assets</a></td>
<td class="text"><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Prepaid expenses and other assets consist of the following (in thousands):</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,<br/>2025</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31,<br/>2024</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Prepaid expenses</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">19,242</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">21,353</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">502</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">625</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total prepaid expenses and other assets</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">19,744</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">21,978</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_trex_PrepaidExpenseAndOtherAssetsCurrentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 pertaining to prepaid expense and other assets current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">trex_PrepaidExpenseAndOtherAssetsCurrentTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>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>Accrued Expenses and Other Liabilities (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_PayablesAndAccrualsAbstract', window );"><strong>Payables and Accruals [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock', window );">Summary of Accrued Expenses and Other Liabilities</a></td>
<td class="text"><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Accrued expenses and other liabilities consist of the following (in thousands):</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,<br/>2025</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31,<br/>2024</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Sales and marketing</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">39,522</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">22,874</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Income taxes</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">20,067</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">917</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Compensation and benefits</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">14,600</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">16,132</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span><span style="-sec-ix-hidden:F_e2aa5d31-7ed7-42b1-955d-2a49e48c0b78;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating</span></span></span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"> </span><span><span style="-sec-ix-hidden:F_ec91e9ce-d153-4e5e-aa4a-835f2d40fa80;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">lease liabilities</span></span></span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">11,093</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10,800</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Capital projects</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8,216</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">13,274</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Manufacturing costs</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4,000</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,904</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Other</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">7,929</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5,978</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total accrued expenses and other liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">105,427</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">72,879</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_trex_ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the components of accrued liabilities and other current liabilities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">trex_ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</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_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<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>Leases (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_LeasesAbstract', window );"><strong>Leases [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_SupplementalFinancialInformationOfOperatingLeasesTableTextBlock', window );">Supplemental Cash Flow information and Supplemental balance sheet information related to operating leases to operating leases</a></td>
<td class="text"><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table includes supplemental cash flow information for the three months ended March 31, 2025 and March 31, 2024, and supplemental balance sheet information at March 31, 2025 and December 31, 2024 related to operating leases (in thousands):</span></p><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31,</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Supplemental cash flow information</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Cash paid for amounts included in the measurement of<br/>&#160;&#160;&#160;operating lease liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,661</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,007</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating ROU assets obtained in exchange for lease<br/>&#160;&#160;&#160;liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">692</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">578</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Supplemental balance sheet information</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">March 31,<br/>2025</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">December 31,<br/>2024</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating lease ROU assets</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">49,976</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">52,195</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating lease liabilities:</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Accrued expenses and other current liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">11,093</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10,800</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Operating lease liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">39,788</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">41,979</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total operating lease liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">50,881</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">52,779</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Maturities of operating lease liabilities</a></td>
<td class="text"><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table summarizes maturities of operating lease liabilities at March 31, 2025 (in thousands):</span></p><p style="margin-left:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:60.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:80.236%;box-sizing:content-box;"></td>
          <td style="width:1.94%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:15.823%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Maturities of operating lease liabilities</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2025</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">8,518</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2026</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">11,237</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2027</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10,641</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2028</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">9,650</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2029</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4,385</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Thereafter</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">15,555</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total lease payments</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">59,986</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Less imputed interest</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">9,105</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total operating lease liabilities</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">50,881</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_trex_SupplementalFinancialInformationOfOperatingLeasesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Table includes supplemental cash flow information and supplemental balance sheet information related to operating leases</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;">trex_SupplementalFinancialInformationOfOperatingLeasesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeasesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_LeasesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<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>Stockholders' Equity (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_EquityAbstract', window );"><strong>Equity [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Computation of Basic and Diluted Earnings Per Share</a></td>
<td class="text"><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table sets forth the computation of basic and diluted earnings per share (in thousands, except share and per share data):</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:75.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:49.92%;box-sizing:content-box;"></td>
          <td style="width:2.1%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:20.939999999999998%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:2.1%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:20.939999999999998%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31,</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Numerator:</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Net income available to common shareholders</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">60,434</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">89,070</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Denominator:</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Basic weighted average shares outstanding</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">107,180,665</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">108,640,168</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;">
          <td style="padding-top:0.01in;text-indent:10pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Effect of dilutive securities:</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Stock appreciation rights and options</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">34,543</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">71,202</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Restricted stock</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">68,876</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">79,255</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Diluted weighted average shares outstanding</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">107,284,084</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">108,790,625</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Basic earnings per share</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.56</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.82</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Diluted earnings per share</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.56</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0.82</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock', window );">Antidilutive Securities Excluded from Computation of Earnings Per Share</a></td>
<td class="text"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The computation of diluted earnings per share excludes the following potentially dilutive securities because the effect would be anti-dilutive:  </span><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:59.768%;box-sizing:content-box;"></td>
          <td style="width:1.22%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:16.897%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.22%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:16.897%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31,</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Stock appreciation rights</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">129,069</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">55,132</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Restricted stock</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">92,795</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">48,597</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by antidilutive securities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482662/260-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>39
<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>Stock-Based Compensation (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_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Disclosure of Compensation Related Costs, Share-based Payments [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_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock', window );">Summary of Stock-Based Compensation Expense</a></td>
<td class="text"><p style="text-indent:22.5pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following table summarizes the Company&#8217;s stock-based compensation grants for the three months ended March 31, 2025:</span></p><p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.98%;box-sizing:content-box;"></td>
          <td style="width:1.16%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:13.36%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.88%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Stock Awards<br/>Granted</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Weighted-<br/>Average<br/>Grant Price<br/>Per Share</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Time-based restricted stock units</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">65,750</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">67.29</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Performance-based restricted stock units (a)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">97,063</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">65.34</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Stock appreciation rights</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">43,597</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">67.33</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><div class="item-list-element-wrapper" style="margin-left:0.25in;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.25in;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:3.447919145106397%;word-break:keep-all;display:inline-flex;justify-content:flex-start;">(a)</span><div style="width:100%;display:inline;"><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Includes </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">75,210</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> of target performance-based restricted stock unit awards granted during the three months ended March 31, 2025, and adjustments of </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,093</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> and </span><span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">20,760</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> to grants due to the actual performance level achieved for restricted stock and restricted stock units award</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">ed in 2024 and 2023, r</span><span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">espectively.</span></div></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_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock', window );">Summary of Assumptions Used to Estimate Fair Value of Each SAR</a></td>
<td class="text"><p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The fair value of each SAR is estimated on the date of grant using a </span><span style="font-size:10pt;font-family:Times New Roman;"><span style="-sec-ix-hidden:F_b690300c-0564-496f-a12d-3468f401e2cd;"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">Black-Scholes option-pricing formula.</span></span></span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> For SARs issued in the three months ended March 31, 2025 and March 31, 2024, the data and assumptions shown in the following table were used:</span><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> </span></p><p style="margin-left:18pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.882%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.882%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31, 2025</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31, 2024</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Weighted-average fair value of grants</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">33.49</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">44.83</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Dividend yield</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">0</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Average risk-free interest rate</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4.3</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">4.3</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Expected term (years)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5</span></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">5</span></span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Expected volatility</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">51.7</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">51.2</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">%</span></p></td>
         </tr>
        </table><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock', window );">Summary of Stock-Based Compensation Grants</a></td>
<td class="text"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"> The following table summarizes the Company&#8217;s stock-based compensation expense (in thousands):  </span><p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:66.993%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.62%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:12.883000000000001%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended<br/>March 31,</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2025</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">2024</span></p></td>
          <td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Stock appreciation rights</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">295</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">271</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Time-based restricted stock and restricted stock units</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">826</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,074</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Performance-based restricted stock and restricted stock units</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,140</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,642</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Employee stock purchase plan</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">52</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">166</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"><p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Total stock-based compensation</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,313</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">3,153</span></p></td>
          <td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cost recognized for award under share-based payment arrangement by plan. Includes, but is not limited to, related tax benefit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-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_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 718<br> -SubTopic 10<br> -Subparagraph (f)(2)<br> -Name Accounting Standards Codification<br> -Paragraph 2<br> -Section 50<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-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_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 grant-date fair value of equity options or other equity instruments granted during the year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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>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>Commitments and Contingencies (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_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_ScheduleOfProductWarrantyLiabilityTableTextBlock', window );">Summary of Reconciliation of Company's Residential Product Warranty Reserve</a></td>
<td class="text"><span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">The following is a reconciliation of the Company&#8217;s product warranty and surface flaking reserves (in thousands):  </span><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:80.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:57.477%;box-sizing:content-box;"></td>
          <td style="width:1.399%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:10.776%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.399%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:10.776%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.399%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:10.776%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31, 2025</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Product Warranty</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Surface Flaking</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Beginning balance, January 1</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">15,596</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">7,239</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">22,835</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Provisions and changes in estimates</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,550</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,550</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Settlements made during the period</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,238</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">356</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,594</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Ending balance, March 31</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">16,908</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">6,883</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">23,791</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;">&#160;</span></p>
        <table style="margin-left:auto;border-spacing:0;table-layout:auto;width:80.0%;border-collapse:separate;margin-right:auto;">
         <tr style="visibility:collapse;">
          <td style="width:57.477%;box-sizing:content-box;"></td>
          <td style="width:1.399%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:10.776%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.399%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:10.776%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:1.399%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
          <td style="width:10.776%;box-sizing:content-box;"></td>
          <td style="width:1%;box-sizing:content-box;"></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Three Months Ended March 31, 2024</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;">
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"> </span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Product Warranty</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Surface Flaking</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;">Total</span></p></td>
          <td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Beginning balance, January 1</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">12,066</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">10,112</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">22,178</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Provisions and changes in estimates</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,068</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#8212;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">2,068</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Settlements made during the period</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">924</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">188</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">(</span><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">1,112</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">)</span></p></td>
         </tr>
         <tr style="height:10pt;background-color:#ffffff;word-break:break-word;">
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">Ending balance, March 31</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">13,210</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">9,924</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="color:#000000;font-kerning:none;min-width:fit-content;">$</span></p></td>
          <td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"><span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;">23,134</span></p></td>
          <td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"><p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"><span style="font-kerning:none;min-width:fit-content;">&#160;</span></p></td>
         </tr>
        </table><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_ScheduleOfProductWarrantyLiabilityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<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="2"><div style="width: 200px;"><strong>Business and Organization - Additional Information (Detail)<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_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_NumberOfReportableSegments', window );">Number of reportable segments</a></td>
<td class="nump">1<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_NumberOfReportableSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 54<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfReportableSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>42
<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="2"><div style="width: 200px;"><strong>Recently Adopted Accounting Standards - Additional Information (Details)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><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_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems', window );"><strong>New Accounting Pronouncements or Change in Accounting Principle [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted', window );">Change in Accounting Principle, Accounting Standards Update, Adopted [true false]</a></td>
<td class="text">true<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateImmaterialEffect', window );">Change in Accounting Principle, Accounting Standards Update, Immaterial Effect [true false]</a></td>
<td class="text">true<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountingStandardsUpdateExtensibleList', window );">Accounting Standards Update [Extensible Enumeration]</a></td>
<td class="text">us-gaap:AccountingStandardsUpdate202307Member<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_AccountingStandardsUpdateExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amendment to accounting standards.</p></div>
<a href="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 65<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476173/280-10-65-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 65<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476173/280-10-65-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482615/740-10-65-9<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482615/740-10-65-9<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482615/740-10-65-9<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-2<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 (g)(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 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 24: 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 25: 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)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-2<br><br>Reference 26: 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)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-2<br><br>Reference 27: 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)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-1<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479832/842-10-65-8<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 50<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477123/405-50-65-1<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482477/820-10-65-13<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 13<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482477/820-10-65-13<br><br>Reference 33: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-5<br><br>Reference 34: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-5<br><br>Reference 35: 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 (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-5<br><br>Reference 36: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 37: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 38: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 39: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479845/805-20-65-3<br><br>Reference 40: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479845/805-20-65-3<br><br>Reference 41: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 3<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479845/805-20-65-3<br><br>Reference 42: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-6<br><br>Reference 43: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-6<br><br>Reference 44: 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 45: 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 46: 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 (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-6<br><br>Reference 47: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 48: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 49: 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 (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 50: 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 51: 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 52: 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 53: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 54: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 55: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 56: 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)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 57: 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 58: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 59: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 60: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 61: 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 62: 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 63: 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 (e)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 64: 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 (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 65: 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 66: 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 67: 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 (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 68: 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 (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 69: 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 (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 70: 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 (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 71: 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 (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 72: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 73: 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 (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 74: 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)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 75: 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 76: 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 77: 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 78: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476166/350-60-65-1<br><br>Reference 79: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476166/350-60-65-1<br><br>Reference 80: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccountingStandardsUpdateExtensibleList</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (true false) whether accounting standards update was adopted.</p></div>
<a href="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 65<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476173/280-10-65-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 65<br> -Paragraph 9<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482615/740-10-65-9<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-7<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 7: 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)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479832/842-10-65-8<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 50<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477123/405-50-65-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482477/820-10-65-13<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 13<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482477/820-10-65-13<br><br>Reference 13: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-5<br><br>Reference 14: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-5<br><br>Reference 15: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 16: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479845/805-20-65-3<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479845/805-20-65-3<br><br>Reference 19: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 20: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 21: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 22: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483194/926-20-65-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483194/926-20-65-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 26: 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 (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 27: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 326<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-2<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 3<br> -Subparagraph (a)<br> -SubTopic 10<br> -Topic 326<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-3<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 3<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 326<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-3<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476166/350-60-65-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_ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateImmaterialEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 (true false) whether effect from applying amendment to accounting standards is immaterial.</p></div>
<a href="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 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 2: 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 (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480530/250-10-S99-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateImmaterialEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</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>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476173/280-10-65-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 65<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476173/280-10-65-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482615/740-10-65-9<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482615/740-10-65-9<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 9<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482615/740-10-65-9<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-7<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-2<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 (g)(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 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 24: 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 25: 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)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-2<br><br>Reference 26: 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)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-2<br><br>Reference 27: 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)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483550/848-10-65-1<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (c)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479832/842-10-65-8<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479832/842-10-65-8<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 405<br> -SubTopic 50<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477123/405-50-65-1<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 13<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482477/820-10-65-13<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 13<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482477/820-10-65-13<br><br>Reference 34: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-5<br><br>Reference 35: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-5<br><br>Reference 36: 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 (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-5<br><br>Reference 37: 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 38: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 39: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 40: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 41: 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 42: 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 (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 43: 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 44: 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 45: 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 46: 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 47: 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)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 48: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (i)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480528/815-20-65-6<br><br>Reference 49: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479845/805-20-65-3<br><br>Reference 50: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479845/805-20-65-3<br><br>Reference 51: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 3<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479845/805-20-65-3<br><br>Reference 52: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 5<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479832/842-10-65-5<br><br>Reference 53: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-6<br><br>Reference 54: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-6<br><br>Reference 55: 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 56: 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 57: 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 (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479343/105-10-65-6<br><br>Reference 58: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 59: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 60: 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 (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 61: 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 62: 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 63: 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 64: 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 65: 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)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 66: 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)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 67: 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)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480016/944-40-65-2<br><br>Reference 68: 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 69: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SAB Topic 11.M.Q2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480530/250-10-S99-5<br><br>Reference 70: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 71: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 72: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 73: 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 74: 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 75: 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 76: 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 (e)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 77: 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 (e)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479654/326-10-65-4<br><br>Reference 78: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483194/926-20-65-2<br><br>Reference 79: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483194/926-20-65-2<br><br>Reference 80: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 926<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483194/926-20-65-2<br><br>Reference 81: 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 82: 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 83: 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 84: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 85: 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 86: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483421/250-10-45-6<br><br>Reference 87: 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 (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 88: 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 (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 89: 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 (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 90: 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 (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 91: 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 (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 92: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 93: 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 (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 94: 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)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480175/815-40-65-1<br><br>Reference 95: 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 96: 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 97: 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 98: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480424/946-10-50-3<br><br>Reference 99: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476166/350-60-65-1<br><br>Reference 100: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476166/350-60-65-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_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<FILENAME>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="1"><div style="width: 200px;"><strong>Inventories - Summary of Inventories (Detail) - 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">$ 151,077<span></span>
</td>
<td class="nump">$ 183,670<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryRawMaterials', window );">Raw materials</a></td>
<td class="nump">75,011<span></span>
</td>
<td class="nump">73,281<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_InventoryGross', window );">Total FIFO (first-in, first-out) inventories</a></td>
<td class="nump">226,088<span></span>
</td>
<td class="nump">256,951<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryLIFOReserve', window );">Reserve to adjust inventories to LIFO value</a></td>
<td class="num">(49,669)<span></span>
</td>
<td class="num">(49,669)<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_LIFOInventoryAmount', window );">Total LIFO inventories</a></td>
<td class="nump">$ 176,419<span></span>
</td>
<td class="nump">$ 207,282<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_InventoryGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Gross amount, as of the balance sheet date, of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryLIFOReserve">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount by which inventory stated at last-in first-out (LIFO) is less than (in excess of) inventory stated at other inventory cost methods.</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)(c))<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_InventoryLIFOReserve</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_LIFOInventoryAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 LIFO (last in first out) inventory present at the reporting date when inventory is also valued using different valuation methods.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 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_LIFOInventoryAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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>44
<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>Prepaid Expenses and Other Assets - Summary of Prepaid Expenses and Other Assets (Detail) - 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_PrepaidExpenseAndOtherAssetsAbstract', window );"><strong>Prepaid Expense and Other Assets [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_PrepaidExpenseCurrent', window );">Prepaid expenses</a></td>
<td class="nump">$ 19,242<span></span>
</td>
<td class="nump">$ 21,353<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssetsCurrent', window );">Other</a></td>
<td class="nump">502<span></span>
</td>
<td class="nump">625<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_PrepaidExpenseAndOtherAssetsCurrent', window );">Total prepaid expenses and other assets</a></td>
<td class="nump">$ 19,744<span></span>
</td>
<td class="nump">$ 21,978<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_OtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current assets classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PrepaidExpenseAndOtherAssetsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PrepaidExpenseAndOtherAssetsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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_PrepaidExpenseCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483467/210-10-45-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(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 05<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482955/340-10-05-5<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 340<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483032/340-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_PrepaidExpenseCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>45
<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>Goodwill and Other Intangible Assets, Net - Additional Information (Detail) - USD ($)<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></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_GoodwillLineItems', window );"><strong>Goodwill [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_AmortizationOfIntangibleAssets', window );">Amortization of intangible asset</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_IntangibleAssetsGrossExcludingGoodwill', window );">Intangible Assets</a></td>
<td class="nump">12.2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 10.6<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Accumulated Amortization</a></td>
<td class="nump">2.9<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2.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_FinancingReceivablePortfolioSegmentAxis=us-gaap_ResidentialPortfolioSegmentMember', window );">Residential [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillLineItems', window );"><strong>Goodwill [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_Goodwill', window );">Goodwill</a></td>
<td class="nump">$ 14.2<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 14.2<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_InternetDomainNamesMember', window );">Domain Names [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillLineItems', window );"><strong>Goodwill [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Amortization period</a></td>
<td class="text">15 years<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_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_SoftwareDevelopmentMember', window );">Internal Use Software [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GoodwillLineItems', window );"><strong>Goodwill [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Amortization period</a></td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482686/350-30-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="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_FiniteLivedIntangibleAssetUsefulLife</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_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/exampleRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 40<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482640/350-30-55-40<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480265/350-10-S45-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482665/350-30-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(16))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Goodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated impairment loss, of asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 49<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-49<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482548/350-20-55-24<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 100<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482078/820-10-55-100<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 852<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481372/852-10-55-10<br><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(15))<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 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482598/350-20-45-1<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(10)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Goodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GoodwillLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 24<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482548/350-20-55-24<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-2<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<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/2147482573/350-20-50-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-50-1<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 350<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482573/350-20-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_GoodwillLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsGrossExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated amortization of intangible assets, excluding goodwill.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsGrossExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_FinancingReceivablePortfolioSegmentAxis=us-gaap_ResidentialPortfolioSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinancingReceivablePortfolioSegmentAxis=us-gaap_ResidentialPortfolioSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_InternetDomainNamesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_InternetDomainNamesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_SoftwareDevelopmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_SoftwareDevelopmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>46
<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="1"><div style="width: 200px;"><strong>Accrued Expenses and Other Liabilities - Summary of Accrued Expenses and Other Liabilities (Detail) - 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_PayablesAndAccrualsAbstract', window );"><strong>Payables and Accruals [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_AccruedMarketingCostsCurrent', window );">Sales and marketing</a></td>
<td class="nump">$ 39,522<span></span>
</td>
<td class="nump">$ 22,874<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedIncomeTaxesCurrent', window );">Income Taxes</a></td>
<td class="nump">20,067<span></span>
</td>
<td class="nump">917<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeRelatedLiabilitiesCurrent', window );">Compensation and benefits</a></td>
<td class="nump">14,600<span></span>
</td>
<td class="nump">16,132<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Operating lease liabilities</a></td>
<td class="nump">11,093<span></span>
</td>
<td class="nump">10,800<span></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_trex_AccruedCapitalProjectsCurrent', window );">Capital Projects</a></td>
<td class="nump">8,216<span></span>
</td>
<td class="nump">13,274<span></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_trex_AccruedManufacturingExpensesCurrent', window );">Manufacturing costs</a></td>
<td class="nump">4,000<span></span>
</td>
<td class="nump">2,904<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAccruedLiabilitiesCurrent', window );">Other</a></td>
<td class="nump">7,929<span></span>
</td>
<td class="nump">5,978<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_trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty', window );">Total accrued expenses and other liabilities</a></td>
<td class="nump">$ 105,427<span></span>
</td>
<td class="nump">$ 72,879<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList', window );">Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]</a></td>
<td class="text">Total accrued expenses and other liabilities<span></span>
</td>
<td class="text">Total accrued expenses and other liabilities<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_trex_AccruedCapitalProjectsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accrued capital projects current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">trex_AccruedCapitalProjectsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accrued liabilities and other liabilities current excluding warranty.</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;">trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_trex_AccruedManufacturingExpensesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accrued expenses related to manufacturing facilities primarily consisting of accrued utilities, equipment rentals and temporary labor expenses.</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;">trex_AccruedManufacturingExpensesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccruedIncomeTaxesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://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(15)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedIncomeTaxesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccruedMarketingCostsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 through that date and payable for the marketing, trade and selling of the entity's goods and services. Marketing costs would include expenditures for planning and executing the conception, pricing, promotion, and distribution of ideas, goods, and services; costs of public relations and corporate promotions; and obligations incurred and payable for sales discounts, rebates, price protection programs, etc. offered to customers and under government programs. 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AccruedMarketingCostsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_EmployeeRelatedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. 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> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EmployeeRelatedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 line item in statement of financial position that includes current operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-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_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</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_OtherAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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(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_OtherAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PayablesAndAccrualsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PayablesAndAccrualsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<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>Debt - Additional Information (Detail) - USD ($)<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>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Oct. 10, 2024</div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>May 18, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LinesOfCreditCurrent', window );">Outstanding borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 443,947,000<span></span>
</td>
<td class="nump">$ 202,600,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_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Remaining available borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">106,100,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_LinesOfCreditCurrent', window );">Outstanding borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 443,900,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtWeightedAverageInterestRate', window );">Debt, Weighted Average Interest Rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5.27%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility [Member] | Fifth Amendment And Restated Agreement [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Revolving loans in a collective maximum principal amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 400,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityExpirationDate1', window );">Termination date of the Credit Agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">May 18,  2027<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility [Member] | Fifth Amendment And Restated Agreement [Member] | Letter of Credit [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_trex_LineOfCreditFacilityAdditionalBorrowingCapacity', window );">Revolving loans in a collective maximum principal amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">60,000,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility [Member] | Fifth Amendment And Restated Agreement [Member] | Swingline Letter Of Credit [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</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_trex_LineOfCreditFacilityAdditionalBorrowingCapacity', window );">Revolving loans in a collective maximum principal amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 20,000,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility [Member] | Base Rate [Member] | Fifth Amendment And Restated Agreement [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Interest 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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentDescriptionOfVariableRateBasis', window );">Debt instrument, description of variable rate basis</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">the Federal Funds Rate plus 0.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_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility [Member] | Base Rate [Member] | Credit Agreement Second Amendment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Interest rate</a></td>
<td class="nump">0.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentDescriptionOfVariableRateBasis', window );">Debt instrument, description of variable rate basis</a></td>
<td class="text">the Federal Funds Rate plus 0.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] | Fifth Amendment And Restated Agreement [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Interest 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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentDescriptionOfVariableRateBasis', window );">Debt instrument, description of variable rate basis</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">the Term SOFR plus 1.0% <span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember', window );">Revolving Credit Facility [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] | Credit Agreement Second Amendment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Interest rate</a></td>
<td class="nump">1.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentDescriptionOfVariableRateBasis', window );">Debt instrument, description of variable rate basis</a></td>
<td class="text">the Term SOFR plus 1.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>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=trex_RevolvingALoansMember', window );">Revolving A Loans [Member] | Credit Agreement Second Amendment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Long-Term Line of Credit</a></td>
<td class="nump">$ 400,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=trex_RevolvingBLoanMember', window );">Revolving B Loan [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Long-Term Line of Credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 150,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_CreditFacilityAxis=trex_RevolvingBLoanMember', window );">Revolving B Loan [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Debt instrument, Interest rate, Stated percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2.15%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=trex_RevolvingBLoanMember', window );">Revolving B Loan [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Debt instrument, Interest rate, Stated percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.20%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=trex_RevolvingBLoanMember', window );">Revolving B Loan [Member] | Credit Agreement Second Amendment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Long-Term Line of Credit</a></td>
<td class="nump">$ 150,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentMaturityDate', window );">Matutiry date of credit agreement</a></td>
<td class="text">Dec. 22,  2026<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=trex_RevolvingBLoanMember', window );">Revolving B Loan [Member] | Credit Agreement Second Amendment [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Debt instrument, Interest rate, Stated percentage</a></td>
<td class="nump">1.15%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=trex_RevolvingBLoanMember', window );">Revolving B Loan [Member] | Credit Agreement Second Amendment [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Debt instrument, Interest rate, Stated percentage</a></td>
<td class="nump">0.20%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=trex_RevolvingBLoanMember', window );">Revolving B Loan [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.15%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=trex_RevolvingBLoanMember', window );">Revolving B Loan [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.20%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=trex_RevolvingBLoanMember', window );">Revolving B Loan [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] | Credit Agreement Second Amendment [Member] | Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Interest rate</a></td>
<td class="nump">2.15%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CreditFacilityAxis=trex_RevolvingBLoanMember', window );">Revolving B Loan [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] | Credit Agreement Second Amendment [Member] | Minimum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Interest rate</a></td>
<td class="nump">1.20%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_trex_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;">trex_LineOfCreditFacilityAdditionalBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DebtInstrumentDescriptionOfVariableRateBasis">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Description of reference rate used for variable rate of 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_DebtInstrumentDescriptionOfVariableRateBasis</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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://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(22)(a)(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 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_DebtInstrumentMaturityDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Date when the debt instrument is scheduled to be fully repaid, in YYYY-MM-DD format.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 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(22)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentMaturityDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtWeightedAverageInterestRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average interest rate of debt outstanding.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtWeightedAverageInterestRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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://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/2147478546/942-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(16)(a)(2))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478777/944-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityExpirationDate1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Date the credit facility terminates, in YYYY-MM-DD format.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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(22)(b))<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(19)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityExpirationDate1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-6<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-6<br><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(f))<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_LineOfCreditFacilityLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 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(19)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481544/470-10-50-6<br><br>Reference 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(22)(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(19)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_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_LinesOfCreditCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The carrying value as of the balance sheet date of the current portion of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 2: http://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(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478546/942-210-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LinesOfCreditCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=us-gaap_RevolvingCreditFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_trex_AgreementAxis=trex_FifthAmendmentAndRestatedAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">trex_AgreementAxis=trex_FifthAmendmentAndRestatedAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_trex_CreditFacilityOneAxis=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;">trex_CreditFacilityOneAxis=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_trex_CreditFacilityOneAxis=trex_SwinglineLetterOfCreditMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">trex_CreditFacilityOneAxis=trex_SwinglineLetterOfCreditMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_trex_AgreementAxis=trex_CreditAgreementSecondAmendmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">trex_AgreementAxis=trex_CreditAgreementSecondAmendmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( 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_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=trex_RevolvingALoansMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( 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=trex_RevolvingALoansMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=trex_RevolvingBLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( 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=trex_RevolvingBLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<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="2"><div style="width: 200px;"><strong>Leases - Additional Information (Detail) - USD ($)<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></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_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Weighted average discount rate</a></td>
<td class="nump">4.60%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.57%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseCost', window );">Operating lease cost</a></td>
<td class="nump">$ 3.0<span></span>
</td>
<td class="nump">$ 2.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_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Weighted average remaining lease term</a></td>
<td class="text">6 years 1 month 6 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">6 years 3 months 18 days<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LessorOperatingLeaseTermOfContract', window );">Operating Lease terms</a></td>
<td class="text">10 years<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LessorOperatingLeaseTermOfContract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Term of lessor's operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479773/842-30-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_LessorOperatingLeaseTermOfContract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average discount rate for operating lease calculated at point in time.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<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>Leases - Supplemental Cash flow Information to operating leases (Detail) - 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_CashFlowOperatingActivitiesLesseeAbstract', window );"><strong>Supplemental cash flow information</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeasePayments', window );">Cash paid for amounts included in the measurement of operating lease liabilities</a></td>
<td class="nump">$ 2,661<span></span>
</td>
<td class="nump">$ 2,007<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability', window );">Operating ROU assets obtained in exchange for lease liabilities</a></td>
<td class="nump">692<span></span>
</td>
<td class="nump">$ 578<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_SupplementalBalanceSheetInformationAbstract', window );"><strong>Supplemental balance sheet information</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 ROU assets</a></td>
<td class="nump">49,976<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 52,195<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsAndLiabilitiesLesseeAbstract', window );"><strong>Operating lease liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities', window );">Accrued expenses and other current liabilities</a></td>
<td class="nump">11,093<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10,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_OperatingLeaseLiabilityNoncurrent', window );">Operating lease liabilities</a></td>
<td class="nump">39,788<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">41,979<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_OperatingLeaseLiability', window );">Total operating lease liabilities</a></td>
<td class="nump">$ 50,881<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 52,779<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 accrued expenses and other current liabilities of operating leases</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;">trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_trex_SupplementalBalanceSheetInformationAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">trex_SupplementalBalanceSheetInformationAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsAndLiabilitiesLesseeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AssetsAndLiabilitiesLesseeAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashFlowOperatingActivitiesLesseeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CashFlowOperatingActivitiesLesseeAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_OperatingLeasePayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479041/842-20-45-5<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasePayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in right-of-use asset obtained in exchange for operating lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 53<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<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="1"><div style="width: 200px;"><strong>Leases - Maturities of Operating Lease Liabilities (Detail) - 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_OperatingLeaseLiabilitiesPaymentsDueAbstract', window );"><strong>Operating Lease Liabilities, Payments Due [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_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear', window );">2025</a></td>
<td class="nump">$ 8,518<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2026</a></td>
<td class="nump">11,237<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2027</a></td>
<td class="nump">10,641<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2028</a></td>
<td class="nump">9,650<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour', window );">2029</a></td>
<td class="nump">4,385<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive', window );">Thereafter</a></td>
<td class="nump">15,555<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_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total lease payments</a></td>
<td class="nump">59,986<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Less imputed interest</a></td>
<td class="num">(9,105)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Total operating lease liabilities</a></td>
<td class="nump">$ 50,881<span></span>
</td>
<td class="nump">$ 52,779<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_LesseeOperatingLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year 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>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 842<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478964/842-20-50-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OperatingLeaseLiabilitiesPaymentsDueAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<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>Stockholders' Equity - Additional Information (Detail) - 2023 Stock Repurchase Program [Member] - shares<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>May 04, 2023</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_EquityClassOfTreasuryStockLineItems', window );"><strong>Equity, Class of Treasury Stock [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_TreasuryStockSharesAcquired', window );">Number of shares repurchased by the Company</a></td>
<td class="nump">10,800,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_StockRepurchasedDuringPeriodShares', window );">Stock repurchased during period, shares</a></td>
<td class="text">&#160;<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_EquityClassOfTreasuryStockLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_EquityClassOfTreasuryStockLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockRepurchasedDuringPeriodShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<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(28))<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(29))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 505<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478448/946-505-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 6: 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 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockRepurchasedDuringPeriodShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TreasuryStockSharesAcquired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares that have been repurchased during the period and are being held in treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 505<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481112/505-10-50-2<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><br>Reference 3: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TreasuryStockSharesAcquired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ShareRepurchaseProgramAxis=trex_TwoThousandTwentyThreeStockRepurchaseProgramMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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_ShareRepurchaseProgramAxis=trex_TwoThousandTwentyThreeStockRepurchaseProgramMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>R45.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.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>Stockholders' Equity - Computation of Basic and Diluted Earnings Per Share (Detail) - USD ($)<br> $ / shares in Units, $ 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_NetIncomeLossAbstract', window );"><strong>Numerator:</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 available to common shareholders</a></td>
<td class="nump">$ 60,434<span></span>
</td>
<td class="nump">$ 89,070<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract', window );"><strong>Denominator:</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 );">Basic weighted average shares outstanding</a></td>
<td class="nump">107,180,665<span></span>
</td>
<td class="nump">108,640,168<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract', window );"><strong>Effect of dilutive securities:</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_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted weighted average shares outstanding</a></td>
<td class="nump">107,284,084<span></span>
</td>
<td class="nump">108,790,625<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Basic earnings per share</a></td>
<td class="nump">$ 0.56<span></span>
</td>
<td class="nump">$ 0.82<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted earnings per share</a></td>
<td class="nump">$ 0.56<span></span>
</td>
<td class="nump">$ 0.82<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=trex_StockAppreciationRightsMember', window );">Stock appreciation rights [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract', window );"><strong>Effect of dilutive securities:</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_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements', window );">Dilutive securities</a></td>
<td class="nump">34,543<span></span>
</td>
<td class="nump">71,202<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">Restricted stock [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract', window );"><strong>Effect of dilutive securities:</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_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements', window );">Dilutive securities</a></td>
<td class="nump">68,876<span></span>
</td>
<td class="nump">79,255<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 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 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 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 (e)(4)<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 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 9: 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 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 (b)<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 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<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 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 13: 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 14: 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 15: 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 16: 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 17: 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 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: 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 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 2: 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 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 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 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 (e)(4)<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 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 9: 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 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 (b)<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 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-7<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 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-2<br><br>Reference 13: 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 14: 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 15: 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 16: 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 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 19: 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_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480454/718-10-45-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 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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 22<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-22<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 23<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-23<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 28A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482689/260-10-45-28A<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements</td>
</tr>
<tr>
<td style="padding-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_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 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-6<br><br>Reference 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 805<br> -SubTopic 60<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147476176/805-60-65-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 323<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478666/740-323-65-2<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 323<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 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 10: 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 11: 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 12: 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 13: 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 14: 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 15: 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 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-4<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 946<br> -SubTopic 830<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 10<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479168/946-830-55-10<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479105/946-220-45-7<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6-07(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-1<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 946<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479134/946-220-S99-3<br><br>Reference 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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 23: 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 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 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 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 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 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)(4)(iii)(A))<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 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 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 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 32: 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 33: 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 34: 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 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478524/942-220-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLossAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_NetIncomeLossAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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_WeightedAverageNumberOfSharesOutstandingBasicAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_WeightedAverageNumberOfSharesOutstandingBasicAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=trex_StockAppreciationRightsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=trex_StockAppreciationRightsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>R46.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.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>Stockholders' Equity - Antidilutive Securities Excluded from Computation of Earnings Per Share (Detail) - shares<br></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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_StockAppreciationRightsSARSMember', window );">Stock appreciation rights [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems', window );"><strong>Antidilutive Securities Excluded from Computation of Earnings Per Share [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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Anti-dilutive securities excluded from the computation of diluted earnings per share</a></td>
<td class="nump">129,069<span></span>
</td>
<td class="nump">55,132<span></span>
</td>
</tr>
<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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_RestrictedStockMember', window );">Restricted stock [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems', window );"><strong>Antidilutive Securities Excluded from Computation of Earnings Per Share [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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Anti-dilutive securities excluded from the computation of diluted earnings per share</a></td>
<td class="nump">92,795<span></span>
</td>
<td class="nump">48,597<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_StockAppreciationRightsSARSMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_StockAppreciationRightsSARSMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_RestrictedStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis=us-gaap_RestrictedStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>54
<FILENAME>R47.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.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 From Contracts With Customers - Additional Information (Detail) - 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_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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 339,993<span></span>
</td>
<td class="nump">$ 373,635<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_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/otherTransitionRef<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 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef<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 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 924<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479941/924-10-S99-1<br><br>Reference 7: http://www.xbrl.org/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 8: 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 9: 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 10: 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 11: 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 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> -Subparagraph (a)<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 606<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479806/606-10-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<FILENAME>R48.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.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>Stock-Based Compensation - Additional Information (Detail)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2025 </div>
<div>USD ($) </div>
<div>shares</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions', window );">Unrecognized compensation cost related to unvested awards | $</a></td>
<td class="nump">$ 17.3<span></span>
</td>
</tr>
<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_PlanNameAxis=trex_TwoThousandFourteenStockIncentivePlanMember', window );">2014 Stock Incentive Plan [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockCapitalSharesReservedForFutureIssuance', window );">Number of common stock available for future issuance | shares</a></td>
<td class="nump">3,669,418<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_StockAppreciationRightsSARSMember', window );">Stock Appreciation Rights (SARs) [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration', window );">Fair value assumptions method used</a></td>
<td class="text">us-gaap:BlackScholesMertonModelMember<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_CommonStockCapitalSharesReservedForFutureIssuance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 number of common shares reserved for future issuance.</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_CommonStockCapitalSharesReservedForFutureIssuance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cost to be recognized for nonvested award under share-based payment arrangement. Excludes share and unit options.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>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 1D<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-1D<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<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/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(v)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 method used to estimate fair value of award under share-based payment arrangement. Includes, but is not limited to, Black-Scholes-Merton, Monte Carlo, and Binomial models.</p></div>
<a href="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 50<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-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_ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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=trex_TwoThousandFourteenStockIncentivePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( 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=trex_TwoThousandFourteenStockIncentivePlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_StockAppreciationRightsSARSMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_StockAppreciationRightsSARSMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>56
<FILENAME>R49.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.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>Stock-Based Compensation - Summary of Stock-Based Compensation Grants (Detail)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2025 </div>
<div>$ / shares </div>
<div>shares</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_AwardTypeAxis=trex_TimeBasedRestrictedStockUnitsMember', window );">Time Based Restricted Stock Units [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Stock Awards Granted | shares</a></td>
<td class="nump">65,750<span></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_trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice', window );">Weighted-Average Grant Price Per Share | $ / shares</a></td>
<td class="nump">$ 67.29<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=trex_PerformanceBasedRestrictedStockUnitsMember', window );">Performance Based Restricted Stock Units [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Stock Awards Granted | shares</a></td>
<td class="nump">97,063<span></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_trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice', window );">Weighted-Average Grant Price Per Share | $ / shares</a></td>
<td class="nump">$ 65.34<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_StockAppreciationRightsSARSMember', window );">Stock appreciation rights [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Stock Awards Granted | shares</a></td>
<td class="nump">43,597<span></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_trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice', window );">Weighted-Average Grant Price Per Share | $ / shares</a></td>
<td class="nump">$ 67.33<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share based compensation arrangement by share based payment award non options equity instruments granted weighted average grant price.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=trex_TimeBasedRestrictedStockUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=trex_TimeBasedRestrictedStockUnitsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=trex_PerformanceBasedRestrictedStockUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=trex_PerformanceBasedRestrictedStockUnitsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_StockAppreciationRightsSARSMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_StockAppreciationRightsSARSMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<FILENAME>R50.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.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>Stock-Based Compensation - Summary of Stock-Based Compensation Expenses (Parenthetical) (Details) - shares<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 2023</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_AwardTypeAxis=us-gaap_StockAppreciationRightsSARSMember', window );">Stock Appreciation Rights (SARs) [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number of shares or rights issued</a></td>
<td class="nump">43,597<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=trex_PerformanceBasedRestrictedStockAdjustmentMember', window );">Performance Based Restricted Stock Adjustment [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Number of shares or rights issued</a></td>
<td class="nump">75,210<span></span>
</td>
<td class="nump">1,093<span></span>
</td>
<td class="nump">20,760<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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod</td>
</tr>
<tr>
<td style="padding-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>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 1D<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-1D<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<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/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(v)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_StockAppreciationRightsSARSMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_StockAppreciationRightsSARSMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=trex_PerformanceBasedRestrictedStockAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=trex_PerformanceBasedRestrictedStockAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>58
<FILENAME>R51.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.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>Stock-Based Compensation - Summary of Assumptions Used to Estimate Fair Value of Each SAR (Detail) - Stock appreciation rights [Member] - $ / shares<br></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_trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems', window );"><strong>Share Based Compensation Arrangement by Share Based Payment Award Fair Value Assumptions and Methodology [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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Weighted-average fair value of grants</a></td>
<td class="nump">$ 33.49<span></span>
</td>
<td class="nump">$ 44.83<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate', window );">Dividend yield</a></td>
<td class="nump">0.00%<span></span>
</td>
<td class="nump">0.00%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate', window );">Average risk-free interest rate</a></td>
<td class="nump">4.30%<span></span>
</td>
<td class="nump">4.30%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1', window );">Expected term (years)</a></td>
<td class="text">5 years<span></span>
</td>
<td class="text">5 years<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate', window );">Expected volatility</a></td>
<td class="nump">51.70%<span></span>
</td>
<td class="nump">51.20%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Share Based Compensation Arrangement by Share Based Payment Award Fair Value Assumptions and Methodology [Line Items]</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;">trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue</td>
</tr>
<tr>
<td style="padding-right: 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term.</p></div>
<a href="javascript:void(0);" onclick="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 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The risk-free interest rate assumption that is used in valuing an option on its own shares.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-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_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_StockAppreciationRightsSARSMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_StockAppreciationRightsSARSMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>59
<FILENAME>R52.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.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>Stock-Based Compensation - Summary of Stock-Based Compensation Expenses (Detail) - 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 2,313<span></span>
</td>
<td class="nump">$ 3,153<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_StockAppreciationRightsSARSMember', window );">Stock appreciation rights [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">295<span></span>
</td>
<td class="nump">271<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=trex_TimeBasedRestrictedStockandRestrictedstockUnitsMember', window );">Time-Based Restricted Stock and Restricted Stock Units [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">826<span></span>
</td>
<td class="nump">1,074<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=trex_PerformanceBasedRestrictedStockAndrestrictedStockunitsMember', window );">Performance-Based Restricted Stock and Restricted Stock Units [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">1,140<span></span>
</td>
<td class="nump">1,642<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=trex_EmployeeStockPurchasePlanMember', window );">Employee Stock Purchase Plan [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems', window );"><strong>Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllocatedShareBasedCompensationExpense', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 52<span></span>
</td>
<td class="nump">$ 166<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_AllocatedShareBasedCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.</p></div>
<a href="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 S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 14.F)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479830/718-10-S99-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-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_AllocatedShareBasedCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>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 1D<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-1D<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480483/718-10-35-3<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<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/2147480429/718-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(1)(iv)(04)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(01)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)(iii)(03)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (e)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(ii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iii)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(iv)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (f)(2)(v)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480429/718-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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_StockAppreciationRightsSARSMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_StockAppreciationRightsSARSMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=trex_TimeBasedRestrictedStockandRestrictedstockUnitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=trex_TimeBasedRestrictedStockandRestrictedstockUnitsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=trex_PerformanceBasedRestrictedStockAndrestrictedStockunitsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=trex_PerformanceBasedRestrictedStockAndrestrictedStockunitsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=trex_EmployeeStockPurchasePlanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=trex_EmployeeStockPurchasePlanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>60
<FILENAME>R53.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.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>Income Taxes - Additional Information (Detail) - 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_IncomeTaxContingencyLineItems', window );"><strong>Income Tax Contingency [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_DeferredTaxAssetsValuationAllowance', window );">Valuation allowance</a></td>
<td class="nump">$ 2,600<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Income tax expense (benefit)</a></td>
<td class="nump">$ 21,153<span></span>
</td>
<td class="nump">$ 29,947<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations', window );">Effective tax rate</a></td>
<td class="nump">25.90%<span></span>
</td>
<td class="nump">25.20%<span></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_trex_ExcessTaxBenefitsFromStockBasedAwards', window );">Excess tax benefits from stock based awards</a></td>
<td class="num">$ (100)<span></span>
</td>
<td class="nump">$ 600<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_InternalRevenueServiceIRSMember', window );">Federal Tax Jurisdiction [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxContingencyLineItems', window );"><strong>Income Tax Contingency [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_OpenTaxYear', window );">Tax years subject to examination</a></td>
<td class="text">2020 2021 2022 2023 2024<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_trex_ExcessTaxBenefitsFromStockBasedAwards">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Excess Tax Benefits From Stock Based Awards.</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;">trex_ExcessTaxBenefitsFromStockBasedAwards</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DeferredTaxAssetsValuationAllowance">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-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_DeferredTaxAssetsValuationAllowance</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectiveIncomeTaxRateContinuingOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EffectiveIncomeTaxRateContinuingOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxContingencyLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_IncomeTaxContingencyLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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 270<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (ee)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-12<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 231<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482663/740-10-55-231<br><br>Reference 5: 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 6: 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 7: 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 8: 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 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> -Subparagraph (h)<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 944<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477250/944-220-S99-1<br><br>Reference 11: 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 12: 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_OpenTaxYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tax year that remains open to examination under enacted tax laws, in YYYY format.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 740<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 15<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482685/740-10-50-15<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OpenTaxYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:gYearListItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_InternalRevenueServiceIRSMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxAuthorityNameAxis=us-gaap_InternalRevenueServiceIRSMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>61
<FILENAME>R54.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.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>Segment Information - Additional Information (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>Retailer </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_NumberOfReportableSegments', window );">Number of reportable segments | Segment</a></td>
<td class="nump">1<span></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_trex_NumberOfSalesRetailers', window );">Number of national retailers | Retailer</a></td>
<td class="nump">2<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration', window );">Segment Reporting, CODM, Individual Title and Position or Group Name [Extensible Enumeration]</a></td>
<td class="text">President and Chief Executive Officer [Member]<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription', window );">Segment Reporting, CODM, Profit (Loss) Measure, How Used, Description</a></td>
<td class="text">The primary objective of the CODM is to optimize positive Company-wide performance and financial results. The CODM evaluates segment performance primarily based on net income and net sales. The CODM uses net income to assess performance and allocate resources as this measure provides insight into all aspects of the segment&#8217;s operations and overall success of the segment for a given period. The CODM also uses net sales to assess performance and allocate resources as this measure represents the amount of business the segment engaged in during a given period of time, is an indicator of market growth and acceptance of segment products, and represents the segment&#8217;s customers&#8217; spending habits along with the amount of product the segment sells relative to its competitors.<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_trex_NumberOfSalesRetailers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 national sales retailers.</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;">trex_NumberOfSalesRetailers</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</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_NumberOfReportableSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 54<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NumberOfReportableSegments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 title and position of individual or name of group identified as chief operating decision maker (CODM) for segment reporting.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 54<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<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 21<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-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_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>enum2:enumerationSetItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Description of how chief operating decision maker (CODM) uses reported segment profit (loss) measure to assess performance and allocate resource.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 47<br> -Subparagraph (bb)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 54<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54<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 29<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482810/280-10-50-29<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>62
<FILENAME>R55.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.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 - Additional Information (Detail)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2025 </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_ContingentConsiderationByTypeAxis=trex_IndustrialRevenueBondsMember', window );">Industrial Revenue Bonds [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_ScheduleOfCommitmentsAndContingenciesLineItems', window );"><strong>Schedule Of Commitments And Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentCarryingAmount', window );">Bonds issue</a></td>
<td class="nump">$ 450<span></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_trex_GrossAssetAndLiability', window );">Gross asset and liability</a></td>
<td class="nump">$ 100<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GuaranteeObligationsByNatureAxis=trex_ResidentialUseMember', window );">Residential Use [Member] | Products Sold Prior to January One, Two Thousand and Twenty Three [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_ScheduleOfCommitmentsAndContingenciesLineItems', window );"><strong>Schedule Of Commitments And Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_WarrantyPeriod', window );">Warranty period</a></td>
<td class="text">25 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GuaranteeObligationsByNatureAxis=trex_CommercialUseMember', window );">Commercial Use [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_ScheduleOfCommitmentsAndContingenciesLineItems', window );"><strong>Schedule Of Commitments And Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_WarrantyPeriod', window );">Warranty period</a></td>
<td class="text">10 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GuaranteeObligationsByNatureAxis=trex_CommercialUseMember', window );">Commercial Use [Member] | Products Sold Prior to January One, Two Thousand and Twenty Three [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_ScheduleOfCommitmentsAndContingenciesLineItems', window );"><strong>Schedule Of Commitments And Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_WarrantyPeriod', window );">Warranty period</a></td>
<td class="text">10 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=trex_SignatureRailingAndTranscendCladdingMember', window );">Signature Railing And Transcend Cladding [Member] | Commercial Use [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_ScheduleOfCommitmentsAndContingenciesLineItems', window );"><strong>Schedule Of Commitments And Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_WarrantyPeriod', window );">Warranty period</a></td>
<td class="text">25 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=trex_TranscendDeckingMember', window );">Transcend Decking [Member] | Residential Use [Member] | Products Sold on or After January One, Two Thousand and Twenty Three [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_ScheduleOfCommitmentsAndContingenciesLineItems', window );"><strong>Schedule Of Commitments And Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_WarrantyPeriod', window );">Warranty period</a></td>
<td class="text">50 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=trex_SelectDeckingAndUniversalFasciaMember', window );">Select Decking And Universal Fascia [Member] | Residential Use [Member] | Products Sold on or After January One, Two Thousand and Twenty Three [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_ScheduleOfCommitmentsAndContingenciesLineItems', window );"><strong>Schedule Of Commitments And Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_WarrantyPeriod', window );">Warranty period</a></td>
<td class="text">35 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=trex_EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember', window );">Enhance Decking And Transcend, Select, Enhance And Signature Railing [Member] | Residential Use [Member] | Products Sold on or After January One, Two Thousand and Twenty Three [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_ScheduleOfCommitmentsAndContingenciesLineItems', window );"><strong>Schedule Of Commitments And Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_WarrantyPeriod', window );">Warranty period</a></td>
<td class="text">25 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=trex_SignatureRailingMember', window );">Signature Railing [Member] | Residential and Commercial Use [Member] | Products Sold Prior to January One, Two Thousand and Twenty Three [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_ScheduleOfCommitmentsAndContingenciesLineItems', window );"><strong>Schedule Of Commitments And Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_trex_WarrantyPeriod', window );">Warranty period</a></td>
<td class="text">25 years<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_trex_GrossAssetAndLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 asset and liability</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;">trex_GrossAssetAndLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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_trex_ScheduleOfCommitmentsAndContingenciesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Schedule of commitments and contingencies.</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;">trex_ScheduleOfCommitmentsAndContingenciesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_trex_WarrantyPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The number of years the Company warrants that its products will be free from material defects in workmanship and materials.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">trex_WarrantyPeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>trex_</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_DebtInstrumentCarryingAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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://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/2147478546/942-210-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147481139/470-20-50-4<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentCarryingAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContingentConsiderationByTypeAxis=trex_IndustrialRevenueBondsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContingentConsiderationByTypeAxis=trex_IndustrialRevenueBondsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_GuaranteeObligationsByNatureAxis=trex_ResidentialUseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GuaranteeObligationsByNatureAxis=trex_ResidentialUseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_SupplyCommitmentAxis=trex_ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SupplyCommitmentAxis=trex_ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_GuaranteeObligationsByNatureAxis=trex_CommercialUseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GuaranteeObligationsByNatureAxis=trex_CommercialUseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=trex_SignatureRailingAndTranscendCladdingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=trex_SignatureRailingAndTranscendCladdingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=trex_TranscendDeckingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=trex_TranscendDeckingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_SupplyCommitmentAxis=trex_ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SupplyCommitmentAxis=trex_ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=trex_SelectDeckingAndUniversalFasciaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=trex_SelectDeckingAndUniversalFasciaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=trex_EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=trex_EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=trex_SignatureRailingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="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=trex_SignatureRailingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_GuaranteeObligationsByNatureAxis=trex_ResidentialAndCommercialUseMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GuaranteeObligationsByNatureAxis=trex_ResidentialAndCommercialUseMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>63
<FILENAME>R56.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.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 - Summary of Reconciliation of Company's Residential Product Warranty Reserve (Detail) - Surface Flaking Warranty Reserve [Member] - 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_ProductWarrantyLiabilityLineItems', window );"><strong>Product Warranty Liability [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_StandardProductWarrantyAccrual', window );">Beginning balance</a></td>
<td class="nump">$ 22,835<span></span>
</td>
<td class="nump">$ 22,178<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease', window );">Provisions and changes in estimates</a></td>
<td class="nump">2,550<span></span>
</td>
<td class="nump">2,068<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualPayments', window );">Settlements made during the period</a></td>
<td class="num">(1,594)<span></span>
</td>
<td class="num">(1,112)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrual', window );">Ending balance</a></td>
<td class="nump">23,791<span></span>
</td>
<td class="nump">23,134<span></span>
</td>
</tr>
<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_ContingentConsiderationByTypeAxis=trex_ProductWarrantyMember', window );">Product Warranty [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyLiabilityLineItems', window );"><strong>Product Warranty Liability [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_StandardProductWarrantyAccrual', window );">Beginning balance</a></td>
<td class="nump">15,596<span></span>
</td>
<td class="nump">12,066<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease', window );">Provisions and changes in estimates</a></td>
<td class="nump">2,550<span></span>
</td>
<td class="nump">2,068<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualPayments', window );">Settlements made during the period</a></td>
<td class="num">(1,238)<span></span>
</td>
<td class="num">(924)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrual', window );">Ending balance</a></td>
<td class="nump">16,908<span></span>
</td>
<td class="nump">13,210<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContingentConsiderationByTypeAxis=trex_SurfaceFlakingMember', window );">Surface Flaking [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyLiabilityLineItems', window );"><strong>Product Warranty Liability [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_StandardProductWarrantyAccrual', window );">Beginning balance</a></td>
<td class="nump">7,239<span></span>
</td>
<td class="nump">10,112<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease', window );">Provisions and changes in estimates</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrualPayments', window );">Settlements made during the period</a></td>
<td class="num">(356)<span></span>
</td>
<td class="num">(188)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StandardProductWarrantyAccrual', window );">Ending balance</a></td>
<td class="nump">$ 6,883<span></span>
</td>
<td class="nump">$ 9,924<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_ProductWarrantyLiabilityLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_ProductWarrantyLiabilityLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyAccrual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount as of the balance sheet date of the aggregate standard product warranty liability. Does not include the balance for the extended product warranty liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(5)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyAccrualPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in the standard product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard product warranty. Excludes extended product warranties.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrualPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></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 the standard product warranty accrual from changes in estimates attributable to preexisting product warranties. Excludes extended product warranties.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(4)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482425/460-10-50-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ValuationAllowancesAndReservesTypeAxis=trex_SurfaceFlakingWarrantyReserveMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ValuationAllowancesAndReservesTypeAxis=trex_SurfaceFlakingWarrantyReserveMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_ContingentConsiderationByTypeAxis=trex_ProductWarrantyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContingentConsiderationByTypeAxis=trex_ProductWarrantyMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_ContingentConsiderationByTypeAxis=trex_SurfaceFlakingMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContingentConsiderationByTypeAxis=trex_SurfaceFlakingMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>64
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( $B)J%I&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    ( $B)J%H"BM0Z\@   "L"   1
M9&]C4')O<',O8V]R92YX;6S-DE%+PS 0Q[^*Y+V]IM,AH>O+AD\*@@/%MY#<
MMK"F"<E)NV]O&K=.T0\@Y"5W__SN=Y!&>:%<P.?@/ 8R&&]&V_51*+]B!R(O
M *(ZH)6Q3(D^-7<N6$GI&O;@I3K*/4)=54NP2%)+DC !"S\36=MH)51 22Z<
M\5K->/\1N@S3"K!#BSU%X"4'UDX3_6GL&K@")AAAL/&K@'HFYNJ?V-P!=DZ.
MT<RI81C*89%S:0<.;T^/+WG=PO219*\PO8I&T,GCBETFOR[6F^T#:^NJOBNJ
M=.ZW-1>\$OSV?7+]X7<5MDZ;G?EGQLMOQA?!MH%?_Z+]!%!+ P04    " !(
MB:A: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    ( $B)J%K5:QZ\M04  *H>   8
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
M!9?JI[:_'TEW+W]^\[7 =[)V['3/F?3D>7%70I5Q?XI>X4M,H#V1:,VJ%1S
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
M,2MJ _']/>?5RTG]/G'[2OO\/U!+ P04    " !(B:A:R]90.E0'  # 'P
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
M>I?&TR /RS(4)1O0]\(8O]]P@,-;//D&4$L#!!0    ( $B)J%IN+,MX/04
M +,,   9    >&PO=V]R:W-H965T<R]S:&5E=#$P+GAM;*U7[V_;-A#]5P@5
M*#; M1TG:8LT,>"D"184;;(XW08,^T!+)XLM1:HD%<?[Z_>.E)4?<(.@ZY=8
MHGCOWMV].S*'*^N^^HHHB-M:&W^452$T!Z.1SRNJI1_:A@R^E-;5,N#5+4>^
M<22+:%3KT60\?CVJI3+9]#"N7;KIH6V#5H8NG?!M74NW/B9M5T?93K99N%++
M*O#":'K8R"7-*7QN+AW>1CU*H6HR7EDC')5'V6SGX'B/]\<-?RA:^7O/@B-9
M6/N57\Z+HVS,A$A3'AA!XN>&3DAK!@*-;QUFUKMDP_O/&_2S&#MB64A/)U;_
MJ8I0'65O,U%0*5L=KNSJ-^KBV6>\W&H?_XI5MW><B;SUP=:=,1C4RJ1?>=OE
MX3D&D\Y@$GDG1Y'E>QGD]-#9E7"\&VC\$$.-UB"G#!=E'AR^*MB%Z;'TR@M;
MBDM'GDR0G*O#40 T;QCE'<QQ@IE\!V97?+0F5%Z<FH**A_8C4.IY33:\CB=/
M GZ4;BAV=P9B,I[L/X&WV\>Y&_%VOX-WX9;2J']C> -Q8HVW6A4R*<,4#\+G
M=)PI(TVNI!9S+!)D&+SX>[;PP4%(_VS+4"*PMYT -]>!;V1.1UG#OMP-9=.7
M+W9>C]\]$=Y>'][>4^C/+^.3,-M)3H;B>#8_GXN+,W%Y=3H__70]NSZ_^"2N
M*T)7Y;9NI%DKLQ2MD6VA A4BM]"!\>FI2S5>RCZK_BZKE;PAL2 R CX;Z;!/
MF0CL"NPF=$2HXGMK KMIG )(H\F+)1ER4NLU?Z<F)-L 8I]-)!*KYP6F%SX$
M<JJ^1T*9--4V(O@\G _%G/+6J:!@Q6NGMWDES9*@F;I6/@XC92"#-HX5+X(5
M/!_$SOC5[]%BYH+*-6&!"W)%RU8G%_-7?_&&01<;0M'K023[$[)86&%L +5<
MMP40M6;O#/XX2FQ#;(Z^M8ISO5C_A-PR?4V!MG(;BO-D9QMENOZJI<',Y\^#
MR%467S#L4BB_<+3*1S[8:IB]CM0=U\;Q^KW] T&WS$](= #<N)7RA,GL<Z<6
MH(D54N;7F$-5$,=L*"?O<0A%\E*44CG1W!\!=Z+L,MH'__]K-10GY (.3(Y'
M2VBJ5+E,:KKS6TN4$>)"1<"Q@70MBB4UMT14'?QP8>,CL@)DL2;Y,(YA;-(?
M4]1&2IN@6U[L-'624I#2A_(E>G[CFXHMCN_<81,.S0B&VX7K0F<LQ@Z5(Q)U
M.D^(SQ.!TR"O^N, BG$4U;ZIHX)(E2EB%I&_CN3&3:AD0#K7R"NDTN ^P"%W
MWDKE<\0=,P=G7-3W0*T7Y'J'*9@NYI<OWDYVWKSSWXF"J<FR3$ZXMX1I(QBV
ME3@ZK(-@4VKA:R 6;8BA:%7'1 6;1D)N?>#2HE%:MFL9%RU0H#&@ZQ:]UCA;
M8 H!+VZ& R=7,. Q)W5T4^KNQ M(4EG&K087,/#Q31<NHZ)N)3J#I35(@Y*
MZ+B_$QV%V//H@\ONVZ9!RC$9(6(P<FT3HT<K M_6*H]*4]TB/(Q8*+"4Q0TY
MM"?%%*'HSM9BJ2V$C4:5&I,>22X($&G^+LDV$ Y&*G:PY+7*N850$?^CRO:5
M;77!<N![+#<V;+ZT)ET4XW$31;]-NUL![\8JSQ]"V1Y/C9DQ+6RNJ+$NIO':
MT>U&4@,,R'PHX'MSDGSH];D1)J >ZW)OP".O5!K?>M+//,.&8MNM8W3O(@F-
M+.-UV8O8^^E.V:_V-_)9NHC>;4_7>;3L$N>DT%3"=#Q\LY\)EZ[(Z278)EY+
M%S;@DAL?(0#,9]Z [Z5%0KL7=M#_GS+]#U!+ P04    " !(B:A:#K<\6>8$
M   &"P  &0   'AL+W=O<FMS:&5E=',O<VAE970Q,2YX;6R=5FM/[#80_2NC
M7.D*)+I/N" >*RV[W%ZD\A +K:JJ'[R)LW%)[& [+/37]XSS8$% JW[9;!+/
MF7/.C"<^7AM[[S(I/3T5N78G4>9]>=CONSB3A7 ]4TJ--ZFQA?"XM:N^*ZT4
M20@J\OYH,/C6+X32T>0X/+NVDV-3^5QI>6W)544A[/.IS,WZ)!I&[8,;M<H\
M/^A/CDNQD@OI[\IKB[M^AY*H0FJGC"8KTY-H.CP\W>7U8<&O2J[=QG]B)4MC
M[OGF/#F)!DQ(YC+VC"!P>90SF><,!!H/#6;4I>3 S?\M^O>@'5J6PLF9R7]3
MB<].HH.($IF**O<W9OU#-GKV&"\VN0N_M*[7[HTBBBOG3=$$@T&A='T53XT/
M&P$'@P\"1DW */"N$P66<^'%Y-B:-5E>#33^$Z2&:)!3FHNR\!9O%>+\Y$;&
M4OO\F::)*;U,:!K'IM)>Z14MO-")L(D[[GNDXH!^W,">UK"C#V#'=&&TSQR=
MZ40FK^/[H-CQ'+4\3T>? EX(VZ/Q<(=&@]'>)WCC3O<XX(T_P-N0.<N$7DE'
M$$MGUAI+,V-MW36._I@NG;=HGC_?<Z%.LOM^$MY0AZX4L3R)L&.<M(\RFGS]
M,OPV./I$PFXG8?<S]/]?ND]AWR<][M'-V>SL\O:7WVDZO[J^/9O3=#:[NKN\
M/;_\F1:WT\OY]&:^H'--E^91%DMIN53C'?*9I.]*"QTKD;_+D4X-+K3U?;HX
MW2;E7/6!&+HK$^$E;4T7=]O(TPLI?AKLTPY]_7(P&@V.%G*%D>'I1I;&ANBM
M6U.JF$8'@^U#.B]*R_2PQ)$WS3*QS"6UD7/EXMRX"MI[ 71X1+?0L*I4 A$2
MH^BA4GA+2;>23$I.K;1*52R X1HL^83AZ;!TG:DX(V$Y>E7EPJ)LS$1A=S /
M-BG.E$P)X]:*0#R1L0JSKQ#W<'-K=C6_V*[]C$U1&J?"7$-J[EQ1L%U\9[#"
M=A24EX6KHQB %0WWCR!>>8CFR YIK7RF=%B**2^T^EOP\YVP*D-SMB!4L2:^
ML\$_:"BD8".VW';PHD[>)8/45(&<)?@5C!<.$#4&!(>/"WN+6'[4Q/>XG422
MJ)H&#W%-2GMI5<&S6$&8R/-.ZYLTP1;D\1N5<ABJV-QAWS2%3!I@H76%#@VX
M5&#TTO)%(!*ABOAX\-5GQLF7\.4S=3W6>]TK8&?6CJ /B+E7)3QOK'*A<O_!
MJ@T6/<Q3%$YU'96)1\D@Z)>\71:ZN;4DZ!!EF6]PA(5H"T=X#_[^^0WG-13*
M-)7A>QFHI[ /SCQ+81WHK)36W* B125HCC$4MOMP;Z?9\FP\Q[6E0H652?X]
M=!?ZPM80/-%"2X(+H@OE7ZNO=U+C/[=34,BM(R [J?=W:";4LJJG!J1:X\I:
M%U8S0^Z>$N1LQS',/,TMW6R%M)M=S@,F0->.S; +A6[8,@_NW&96M=$/E4#A
MPG8/"6 Z;_E.>?-)VWV#"#GJ+>);_J&],25MPM5_WGDC9"WAD4C^0@.P==/6
MTM:5KMZ)2D@;3 KDCCUFBW8F5VP9YW1HVV!E,YCXFQCJV]G2SH\>O?=1ZV^<
M30II5^$$AEW(TZH^IG1/NT/>M#[;O"RO3X@X Z!_'.4R1>B@M[\7D:U/7?6-
M-V4XZ2R-Q[DI_,UP4)66%^!]:HQO;SA!=_2=_ -02P,$%     @ 2(FH6KH?
M!&G&!0  E@X  !D   !X;"]W;W)K<VAE971S+W-H965T,3(N>&ULI5=;;]LV
M%/XKA <4+9#:CNTT76Z <^F6AR9![*XHACW0TK'%E1)5DHKC_?I]AY04QW'=
M GVQ)?'<OG/Y2)XLC?WJ,B(O'G-=N--.YGUYU.NY)*-<NJXIJ<#*W-A<>KS:
M1<^5EF0:E'+=&_3[[WJY5$7G["1\N[-G)Z;R6A5T9X6K\ES:U3EILSSM['>:
M#_=JD7G^T#L[*>6")N0_E7<6;[W62JIR*IPRA; T/^V,]X_.1RP?!/Y2M'1K
MSX*1S(SYRB_7Z6FGSP&1IL2S!8F_![H@K=D0POA6V^RT+EEQ_;FQ_B%@!Y:9
M='1A]&>5^NRT\[XC4IK+2OM[L_R3:CP';"\QVH5?L8RR!X..2"KG35XK(X)<
M%?%?/M9Y6%-XW_^.PJ!6&(2XHZ,0Y:7T\NS$FJ6P+ UK_!"@!FT$IPHNRL1;
MK"KH^;,;Y&V<)*8JO"H68N)ED4J;.G%CO/B"IABGIO24GO0\O+%.+ZDMGT?+
M@^]8'HJ/IO"9$U=%NJG?0Y1MJ(,FU//!3H,?I>V*X?Z>&/0'!SOL#5OHPV!O
M^(O0Q=_CF?,6_?//MBQ$)Z/M3GBFCEPI$SKM8&@<V0?JG+WZ;?]=_W@'A%$+
M8;3+^B]5;Z?E[7&/NN+FZK,87US<?KJ97M_\(2;3\<WE^/YR(FYNI^++U52,
M+V_OIE>7XKI $ ^4S\ARP49[PF<D/HPGYT(Y5R&MX\DGB'3#ZMO^<$^\^NW]
M8- _OBX2DQ.#\83Q]^'[_OZQN*?2V #TPN2(*F-N>"!1*S1BE\K)Q<+20H:Y
MQVNBC:N HAL\0&2:*2<6E4IED1"XY5NEL"QR8PDC[:72B"]M%86<@<\" +\J
M(6CF@A[!BP[/(3T%]\E2^4P50:Q>%8DL.8B@P=_GJH!+);5P#3S7%9.2$C57
MB=1ZM;?N%UIE99-,NNA4%0_0,!92E)?:K @ND OX"F"A3(@'#N(;V@$ZZ(J%
MFFG < X](7/.XG\Q.]*V^%.!]YGQ&=18BZS*@P59%!4B!ODI!(O"RC15M0/Q
M#4L*6+@0*;G$JH"8H[7$NP+7"R[1H@Y6\5'3@T157Z1HF:DD$YF$H0+MZZB4
M%CG2*S$C*C@M35E#KC4B>A[[SK!OP_KZM\U,8QG)57X5&NGPV#&[(_X&#K82
MS6#:RK,3+FI$MU4$;=9$V$77L2P5:2B[\ ;:$*C*%)!")6@^I[!-"6RW3;"V
M;?L2V RF>T8+5<3$SH%77%(2!VW_(+#CN[;R(1D_JW;8%5?2(M^26:-&O1XB
MGF K5][_&([+3*53+I$L2ZU0H=(:5T9X\ 'Q;</0D /C?PD\QAT&K,U4\%:/
M5^T[Z/I-=[)8\0J&#*$H/#56GR:XGM[M4\IXF7C8SHP Z8%[H$E5:$@8PFF
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
MTS[AT.7&J0=98ZRJCF!24 G9O?GK\1PN */P'0 [ EBKN]NH57G'+9^.M3J
M=MG$Y@9MJ2V:Q GIFK*QFE8%X>QTEF6ZP1R6K]1F@P:XS.'1%JCA7O"M*(45
M:,:!I;T<(LB.O/..E[W#&\.#DK8PL)0YYM_C ])X%LI.0N?L*N$#US<01SZP
MD/6O\,7GPN.6+WZ';\V_\FUY++@]!5X:^'.V-5;3I_+76R5WC,G;C.[ZW)J:
M9SCQZ'X8U%_0F_[X0S0(?[FB-SGK3:ZQ_X]&7>5]6_7H!F:+Q=/GY1TL_U@O
M/VV6&YA]NH/'YX_+)[A?S>:K^]7SRLT>9>&E+-7**K_)@DS1-386U YH#7:J
M)#<0<@\_"4DSJC&$,S_?]JC-6='V^0XSK+;$0T%OPT^M(NMX0>N@'R!._3YC
M-&#,'PV3WDIFJD*P_)626>B'@R&DT;"W4)53QSL?()(M2MP):R!*_$$80C3P
MHYCU'FO4O.4ND6[Z=Q5$D1^F,42A/PK#WH+7PO(2:JW^)G\Q,/)9-( H]AGI
M>."RV=%'U&C'E2E#"8D?TD;,3\.DU[5MZ*<LA;Z?#D>]9^78^'\[S ^DHN\G
M;$BCH:L\A;<^L.#"%2K4^];[7"L::3N#.,^>[776N<JW],Z;J2M[(0T=RXZ@
MX<VP[X'N_*X+K*I;C]DJ2X[5#@OZ1:!V";2^4\J> K?!^:<S_1=02P,$%
M  @ 2(FH6HJ%U;X?"0  -Q\  !D   !X;"]W;W)K<VAE971S+W-H965T,3<N
M>&UL[5E;;^,V%OXKA+==)(!7ON0RTVD2P+FA \QT@B1M'XI]H"3:9D<259**
MXW^_WR%ULZ2XF2G0A\4 <6Q1Y#G?N1^29QNE/YNU$)8]ITEFSD=K:_-WDXF)
MUB+E)E"YR/!FJ73*+1[U:F)R+7CL%J7)9#Z=GDY2+K/1Q9D;N],79ZJPB<S$
MG6:F2%.NMY<B49OST6Q4#=S+U=K2P.3B+.<K\2#L+_F=QM.DIA++5&1&JHQI
ML3P?+6;O+H]IOIOPJQ0;T_K-2))0J<_T\#X^'TT)D$A$9(D"Q]>3N!))0H0
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
M 1%U0GVO!D6B6YA9"@LG,!J$=!<HY:\UPCB!^'$E(/ZV07_;J74G]LI?3D2
M-/5'?$A7H!P.$'R'.59S.L\M1T\B'42=]-XF'8RZV4\%7TB;ZY;JQ/ 1_$K4
M\2 -X:4W& ^2";P\%*_0BCXUG)NC,\1M*5CZ\#2-0JY04C@7MH2"#&F_^[:Q
MFL7_.CM>>Q)D+J@SN'W\]W4_T,]F;5 )UH[J]UF'O/:%22U&KO;-:>^S)[U_
M+_?N_CME'YQC]:YXOQ%RX640%9^1W<JW !^-1*'@K?&8W(A4>T&:1OX_#">]
MCSN6MQ^_@+ 6"4//N8LZ#'S(2U$OT0?IJN\$TFE,O\DD>\KXQ_H]BK>OV5[T
M#GF/PPF,I\%TDG*<.(BFR3-C)<5\<QF>]B[RW+3$>--Y79UK$L#09]D8SG[/
MGD"C* BG(QZ$01:&Q]!A- TF60;CB A->Y\/MOQ3](1 LZCC/IE,#Q9Z]["2
M__@;GR][[TMG= SZ>2%^7U8??A:KY]U/( N2*.-)RJ+$HPF/)ZQ+.HYXG,$T
M2).0AU,8!Z,LH=I%NG8+NH<@2H(D23:J=$$:L>:*L)#0$69I[P8M%6;5M,[7
M%'FA=?":8*,P@3>_HNBA+_EP[SU5H5GZ5Z,%?VEU3ZO=ZNYA>M&]QQ[-NU<M
M:;N4]/U16)!K.)@D?3#=2[&;.-WXU]E<.WKK^6%)CVLT;$#[A=9N.^$ N^?Z
M[%]02P,$%     @ 2(FH6@33BH[; @  4P8  !D   !X;"]W;W)K<VAE971S
M+W-H965T,3DN>&ULC57?;]HP$/Y73IFTIXI H%W5022@K8:TLJJTV\.T!R>Y
M$*N.G=H./_[[GAU(J01H+\0^WWWW?6??,5PK_6H*1 N;4D@S"@IKJYLP-&F!
M)3,=5:&DDUSIDEG:ZF5H*HTL\T&E"*-N]RHL&9=!//2V1QT/56T%E_BHP=1E
MR?1V@D*M1T$OV!N>^+*PSA#&PXHM<8'VI7K4M M;E(R7* U7$C3FHV#<NYD,
MG+]W^,UQ;0[6X)0D2KVZS2P;!5U'" 6FUB$P^JQPBD(X(*+QML,,VI0N\'"]
M1[_WVDE+P@Q.E?C#,UN,@NL ,LQ9+>R36O_ G9Y+AY<J8?POK!O?P54 :6VL
M*G?!Q*#DLOFRS:X.!P'7W1,!T2X@\KR;1)[E+;,L'FJU!NV\"<TMO%0?3>2X
M=)>RL)I..<79^)Y+)E/.!,RDL;JF>ELS#"U!.X<PW<%,&ICH!$P?'I2TA8$[
MF6'V.3XD2BVO:,]K$IT%?&"Z _W>!43=Z/(,7K_5V?=X_1-X,[E"8[VZ"Q@+
M ;]L@1H.S/!WG% %Z)G\.Z:_@1\<AW>M<V,JEN(HH-XPJ%<8Q%^_]*ZZW\^0
M'[3D!^?0__^2SL(<)]GK=>!^-A_/I[/Q3YC-%\]/+P]W\^<%/!<(4U563&XA
M5=2&&6H#5#9JQE1INF=8,5$CJ!PXU2]O63)CD Q,9B X2[C@EB/5W:,8R^42
M*LUI"'"Q==$I,X7W]@M\JSD!-U?%TE35[G8H)Y(Y$7A@K-BVM>B:".&&II5Q
MN92_W[36FH ^TW"9,DPL6 6LJK3:$!>+7EK.N/Z0U8@U%?K9<4(7T'"QOE;T
M]BEYYE9&"9X1: 83)J@L" O7HQ1L@=YV6K2/V\/=DKHR(<([ZZ #Q]Y->-#H
M)>JE'V<&?#6:GF^M[<0<-X/BP[T9MT1BR:4!@3F%=CO?+@/0S0AK-E95?FPD
MRM(0\LN"ICYJYT#GN5)VOW$)VO^1^!U02P,$%     @ 2(FH6DD/^9R !
MD0H  !D   !X;"]W;W)K<VAE971S+W-H965T,C N>&ULC59M<]I&$/[.K]@A
MF32944$2$@@"S-B&3C*M8]<X[70Z_7!("[J)I%/N3L;^]]T["1FW0/P%="_[
M[+.[S][=="?D-Y4B:GC,LT+-NJG6Y:3?5W&*.5,]46)!*QLA<Z9I*+=]54ID
MB37*L[[ONL-^SGC1G4_MW*V<3T6E,U[@K015Y3F33Y>8B=VLZW7W$W=\FVHS
MT9]/2[;%%>JOY:VD4;]%27B.A>*B (F;6??"FUP&9K_=\ ?'G3KX!A/)6HAO
M9O YF75=0P@SC+5!8/3W@%>890:(:'QO,+NM2V-X^+U'_\7&3K&LF<(KD?W)
M$YW.NE$7$MRP*M-W8O<)FWA"@Q>+3-E?V-5[??(85TJ+O#&F<<Z+^I\]-GDX
M,(C<$P9^8^!;WK4CRW+!-)M/I=B!-+L)S7S84*TUD>.%*<I*2UKE9*?G*RWB
M;ZG($I3J)UA^K[A^FO8U(9OU?MR@7-8H_@F4 5R+0J<*ED6"R4O[/C%J:?E[
M6I?^6<!K)GLP\!SP73\\@S=HPQQ8O,$)O#HP^/MBK;0D)?QS+,8:(C@.8;IC
MHDH6XZQ+\E<H'[ [?_?&&[H?SQ ,6H+!.?17U^$LRG&.GM^#U?W-U:^?;GY;
M+.]6[]Y$OC?Z",O?OWZ^_PN63!:\V"JX10FKE$F$^Q1A(S)J6%H S=89@D*M
M:%+J%#0MQR(O*\UL9XF-:0P> RL22'A6:4P ][ EP2H+^YX79"LJ1?N4 _@8
M8ZF;-6/ZO#,A*7^8=.Y3B?A"6AVC!R.*H/.ERE$R+>2D\X4.+UX0)<)Y8#RS
MA+4P)'/B9S&;W,);&+I., CH(QH[[LCM++ 0U%DUU*4-9&>;F:)@#^1CBS6$
M CK5E":J)BV>.W*\R'6&PY"^(V<8N(XWC#K+S89.'),4FPHZ<RAW<26YYJ@F
M'5MH8"75)^9U_J1QIFP*1&EF% P")PP&,/(<BK5SAZ1:'AM"RIH/(R<:#6$T
M=OPP["R:E+^6M1\%CAL%EO5H3!'X81/WD:*]!;<7#NU?Y+>N?K01SFSDJE$/
M+5?**HP$]3_R196OR8;RV(21H$9)A:(]I$-KM#[%^E">958IN[NM![8EVBO$
M9A6IZQY8A@45XYF8IKM.5?*IV90C23CIV1[Y3Q.<D3YI/:L2K'D\MU8I-'GC
M+,N>CJD%UABS2J&U:DCO1)4EM$!RT?SGO=$/>N6TZ#R?FF XAC!TO,$1I8U]
MDD@(0>2$XQ'4.'=85C).Z2Z$6RFVDN5P4\ U>X+ 'M@#QQ*^E_@(EX+)Q"1G
MP<DWM1CI/"&5FT)#09=V[48^0Y8-Y'N#=-+C!X-9E:;+/1(<78U9QO>]KLPB
MUR^5?UCJNGQG'0 -H!#FW*/JE5S6::.3"7NPH +MY6'SGM=Y1Y-WR@1!M;=7
MG8PKD@HK3)43@ZH/(S;SK^,-%3FHI7^6? ^.74G]@V<"G9U;^Q@RS5@5NGXQ
MM+/M>^NB?F8\;Z\?:Q3BEM,YE>&&3-W>*.S6BMH/M"CMHV,M-#UA[&=*;T:4
M9@.M;P1)OQD8!^TK=/XO4$L#!!0    ( $B)J%I6C@IV&@4  ,T+   9
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
M2&D"QA=*V>:!%+3?%Z_^!%!+ P04    " !(B:A:D1>2%[T$  !^"P  &0
M 'AL+W=O<FMS:&5E=',O<VAE970R,RYX;6R]5FEOXS80_2L#[8$6<'TFV6PV
M,9!KT7Q(&VS2 RCZ@9+&%C>4J"4I'_OK^X:R'7OK9#\4*)!#HF8>W[PYR-.Y
M=8^^8 ZT*$WESY(BA/JDU_-9P:7R75MSA2\3ZTH5\.JF/5\[5GET*DUOV.\?
M]4JEJV1\&M?NW/C4-L'HBN\<^:8LE5M>L+'SLV20K!<^Z6D19*$W/JW5E.\Y
M_%;?.;SU-BBY+KGRVE;D>'*6G ].+@[$/AK\KGGNMYY)(DFM?927F_PLZ0LA
M-IP%05#X-^-+-D: 0./+"C/9;"F.V\]K](\Q=L22*L^7UORA\U"<)<<)Y3Q1
MC0F?[/QG7L5S*'B9-3[^I7EK.QHEE#4^V'+E# :EKMK_:K'28<OAN/^,PW#E
M,(R\VXTBRRL5U/C4V3DYL0::/,10HS?(Z4J2<A\<OFKXA?%-E=F2Z4$MV)_V
M A!EO9>MO"]:[^$SWB.ZM54H/%U7.>>[_CTPV= 9KNE<#%\$O%6N2Z-!AX;]
MX>$+>*-->*.(-_IN>'2E?6:L;QS37^>I#PX%\?>^D%O$@_V(TB0GOE89GR7H
M L]NQLGX[:O!4?_#"WP/-GP/7D+_;CI>]-[/;7#8I9M?+G^]O::'\S^O[^FA
M8+JT9:VJY=M7Q\/!NP^>>#+AV!\4()53@0D-3P&FH7#,5+9Y9LDS(4M9L4D3
MJ>J;I8,.S96GX6'W/;V)G_$XI#=8+C3,P U- R!=X2=&+-OR J/&,]D)O:;A
M !ZE-B;V+B"P]!YXJZ6.@-0M9[/LTE7C=#7]#X3#DRJ 5D9_A=_K'ZC?'="/
MWQ#I=X_V\^@(=UYD[/U.1.*VM9QRQ1,=:.)L26CQ[/$GF2PYJ;ERN8_FCC/K
MA+LB/,@FMLHEQ&W,-5"P>W3L;F<:YLHLO[(G';R,+09F'LV5]XPU5C$SM75!
MMJG9:9MWL#D&<,Y1764,J9G21J6&J;9>QY(1)A5/57SA&:RKC"6W.0=V&%KK
MS BQ3/+>"JSB7(9BH; (: ^I+IU[,=C-WVZRY.0)^(5L-%.F:5%!U<Z5\&BK
MZ2ECI*9B'?:*4#N-LTD;J0&CA"JD]4'Z0:PRF(M^D)Q]@&F H'/@2F@:DR5E
MM(V4($-Q/*PK:3<7.%)==(5&)3I!UZ;%_XPJ]KF.!Y;OB+ =L9%P*SF##-+1
MN+9%TL:C_3W,A%%L6PZ-$QVPL6_2S]!:Z/-"(0>M+.D2&B&Q3?2(.6V@OD,B
M&6K?-Y!YR]Y#W>6J787(I DR/T4L[W$T8V,@@I[G/7@Q@)U<J2QS#4NFC%:I
M-CHL,1*X$D%3-IIG^!@*%61!8W<1T^A'M)8L5U AM-]7E1^K0V)OBU$8QW2(
M7?J<_+L[J9R_-)+@VMF9]A&C4#/))8B5^!Q'H=3^MLC[!7ZN8 4A8R=U^N]$
MQY4E*^?%NB\#S#;3(@XF["<%_NQV_UM<]\JP;]WP2:I<3]'A&@>I3IM@75MW
M,4%J$0>$EGFYW-ANQXP2VBF,W )<?"-#M8&(Q]AJFCR'U:5]!V]OZTY4LIO&
MFY^7_JE">SW:K&XNE^?MG>K)O+V9(IE3F2^&)W#M=]\=)N3:VU[[$FP=;UBI
M#;BOQ<<"%V1V8H#O$VO#^D4VV%RYQ_\ 4$L#!!0    ( $B)J%JQ[2=":P4
M (4,   9    >&PO=V]R:W-H965T<R]S:&5E=#(T+GAM;*5736\;-Q#]*X0"
M!"V@2K+L?#2Q!=B*D_K@V+#=]E#T0"UGM:RYY);D2DY_?=^0JY74*&Z!7JS=
M)6?FO7DS0_IT[?QCJ(BB>*J-#6>#*L;FW7@<BHIJ&4:N(8N5TOE:1KSZY3@T
MGJ1*1K493R>3U^-::CN8G:9OMWYVZMIHM*5;+T);U])_N2#CUF>#H\'FPYU>
M5I$_C&>GC5S2/<6?FUN/MW'O1>F:;-#."D_EV>#\Z-W%">]/&W[1M X[SX*9
M+)Q[Y)<K=3:8," R5$3V(/&SHCD9PXX X\_.YZ /R8:[SQOO'Q-W<%G(0'-G
M?M4J5F>#MP.AJ)2MB7=N_1-U?%ZQO\*9D/Z*==X[_7$@BC9$5W?&0%!KFW_E
M4Y>''8.WDV\83#N#:<*= R64'V24LU/OUL+S;GCCAT0U60.<MBS*??18U;"+
MLWM:(L517-DL,#)U.HYPS,OCHG-RD9U,O^'D6%P[&ZL@+JTBM6\_!J >U72#
MZF+ZK,-KZ4?B^&@HII/IJV?\'?<LCY._XW]A>4>-\U';I?CM?!&B1TW\?HAN
M]G9RV!OWR;O0R(+.!FB$0'Y%@]G+%T>O)^^?P7K28SUYSOM_5>1Y)T>O1^+^
M\M/UY><'<?7YX\W=]?G#U<UG\5"1F+NZD?:+0&-[&2D(;86SA!;CY,B%(1$R
MAJ%X\/2$K 6M\*JE&:(\8X6MP;6^("&-<87,_665D"%0" F^*T6IK;0%K 0B
M)3(6)MQ#2K"!*)P-SF@%%(J_ZS#Z*B**W;8EA&H1%!9UXX*.A,XK'EE(#NNE
M-OTSF>0. T@YYX71*UYJO%-M$0/<^4?B#2UJU8N(A"P\&UI94XX.*=^<O!>C
ME*W>4'KDQ1DEHA,:[TJC@/2BC<Z'%#FN'9QP+H#:4P0HPM*Z<D-.,0C8(3)K
MD ZO 4.;+^R+$?@]O@P0B:YT4<&P,*T"<ZAC4')9%D^U4]1SMAA^G,OHVS3K
M1KLZOWSQ=GKTYGTXH&\FI9 .C]&"G&@>DX7S*BF5I&:JVF*'S5I@4B=]<S"(
MTB,-6VES:0%)V(,B*@EGB6BI.1Q\WVZX)R;S2E,I+I^H:'E:BYNRU 5D@AWG
M*2_?9.\@_X$*G8Z':_F(7=_-;SY<?W^8/2^E^%R51L@V5L[KB#98P?)00:O.
M>59WMX2W99[7:D0/XI$V/<70>NM-&;'DV+#X@])!Q V2*#$NY Z5X)JH:_T7
M-G.)\YZ.Q \X$V@? :)NVPOH<0AM<LT.:25-FYJ[DWK/>EM_O6(6YS]JS=74
M5104EH9V?;8@O;L/B',BOD+6)9'ZM(8L(&C6) .*AMMJI54:/H$/3JXQQX;8
MV1#W6Y>?#G^OX[:T4BA6CZU"6Q0,9=]* !;FS!*YM(Q2.[5#2)K@MJP2W?]'
M"AW&YP&7!8.0M6OS)%RT ?T5PAXVLDLT4VHZU?K4RWM($Q=<@(9<'M)BG](
M $98R%-"+'&XH$D3/B2@B0DNUGO9N_$U[(;C'L!_YC;?-S"TNB\"4B HD%5R
MP<TJC<-+F@O[!+LP>_QXU(4\C[F6N[')$YRBYJDYPADGI%*:Y1QNN\'3BB]?
M H5A,2@*F9QU27L"))8L@9!]7Y4.X+F0"Q<2HBQGFLLNHD<8#9@,Q9(LETQ.
MB%08?#S(,\:-]U0D@3;"YCG9E6P2++$OBMR>G*"YPW%BN9GFNX?:?<1/'A3
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
M'7"$/)+ ',AS.67(T+/7JM&A#[.>5Z+Q,SFZ!Q;B8VQDSL'7XX7X%4T+Y7@
M>K97Y8U!JYM1H086./=CI(1&Z$A=/JB,W.-VQ;"T&:L E/ZB.?-_M-GG1)RY
MSV "Z[\8/'XYIO.F<-#!&2_8QJC-EF$*=!FA3:R%9)"^#- P/9W/24.RE(F'
MLUR7B#S;85Y\PSSI0H/">4_Y?"B_4'1"PVJ1&8"\%9(#(XJ.B!BL0W)^S;TW
M-S6BK>GZN3A 7L,,6T9Y-!\Q]<[INLR4G?/B\N.Y?]FW 6B@X5'%Q;A7BX+F
M$4^,,>_D*AZ@==+N>KBAR2F."79C$+UTR!7MU#L @N^H1M5&5X B!A34%71A
MF%5\C":G2G8_^D#5A,EGL'BW!E/-*[W=&0]<MSTI3WLE86:!%9",M ^1#?NL
M,3R!>I!3PAOG[$:Y28G 5ZIC-I1_V[;%+?,M7K IE=<,OJ,&.-1DBKJ.T2.&
MW-"01%TJ-YBH"2K"+TP8W>R(Z:X)G2=%"1*5O.-6G$*\==V0LE%42AXX(>)1
M;#M(V9IAC<17MGF(.-J4G3' )X_;]+DD>A5IB_)?;QOV5'=R53,$PZ#1PV.'
M<A\.[.)4A9ZCGXQ84DS:&/3>A\F]8@?N3Y:4)^'&[<+AOJ['43@=V.WBPPJJ
M%;H[\Z6 IEP5%E#_5W<A&C8>I-CS4.#$#7WL>,#0#.;^ (P.:"DF0S_[%UM@
M1C$[#1V]JN1GU?7#'L-.%WXAG5/EDFG,.Z%UCE!#%NH.=R/R@SP]/<M X(SF
M0%E4-#6%V9";W-HZ4LNH[U/WC.O(;N<7W+-R-'IM[3X08F^VZ\.4X$_M2Y_;
MQ@]]F)@,OBNAZ*[XZQD5OM8TX1-3_[3_0'<6ODMMR</7/<B]H@&J5 663L?'
MAZ/@K.ZFL35_I4IMT]B*+]<*K9 C KPOK&VZ&]J@_VQY^A]02P,$%     @
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
M965T<R]S:&5E=#(Y+GAM;(U5;6_3,!#^WE]AA0F!%"V.D[Z-MM+>$$A,3&S
M!\0'-[DT9HX=;(>.?\_9:4LG==6^M#[[GN>>\_DNL[4V#[8&<.2QD<K.H]JY
M]BQ);%%#P^VI;D'A2:5-PQV:9I78U@ O ZB1":-TE#1<J&@Q"WNW9C'3G9-"
MP:TAMFL:;OY>@-3K>91&VXTO8E4[OY$L9BU?P1VXK^VM02O9L92B 66%5L1
M-8_.T[.+W/L'AV\"UG9O37PF2ZT?O/&QG$?4"P()A?,,'/_^P"5(Z8E0QN\-
M9[0+Z8'[ZRW[^Y [YK+D%BZU_"Y*5\^C241*J'@GW1>]_@";?(:>K]#2AE^R
M[GV'-")%9YUN-F!4T C5__/'S3WL 2;/ =@&P(+N/E!0><4=7\R,7A/CO9'-
M+T*J 8WBA/)%N7,&3P7BW.*\*$P');E^Q#);L(2KDGQV-1CR2?"ED,()W'US
MSY<2[-M9XC"HAR;%)L!%'X ]$R C-UJYVI)K54+Y%)^@V)UBME5\P8X2WG!S
M2K(T)HRRX1&^;'<#6>#+GN&[Y7]#;B'S<!U<6O+C?&F=P3?S\U#*/6-^F-'W
MT9EM>0'S"!O%@OD#T>+UJW1$WQW1F^_TYL?8%W=]^Q!=D9<5[U "1T,<3F ;
M#/:#Z1!,[KV40F/#6N?EX1FIM,2^%VI%W@B%.[JSB+-OSP98QZ(.A;R" IHE
M\J QN./;6F"6#^ \](1DTWC(&"X8BR?C?/!1%;H!XO@C.C,:T]&83-/QX%(W
M7AWO.QY)EJ"@$LZ2-(]'E))T%*<9&WQNP?# +0%[^DD&:1K3:492&D\H'5SR
M5C@N26OT+YPDEDQBEHY(FL4,==QPU57X2CKCN0IMT2&/*09B\93F@[X8XWC*
MIF083\>3P;WV;/QEEWF"*H9QSL:X&OO,I^30"TKV^K\!LPI3SI>B4ZX?!;O=
MW2 ][^?'?_=^"F-55D)9O)8*H?1T/(R(Z2=;;SC=AFFRU YG4UC6^#$ XQWP
MO-+:;0T?8/=Y6?P#4$L#!!0    ( $B)J%J >R8KP ,  .4)   9    >&PO
M=V]R:W-H965T<R]S:&5E=#,P+GAM;)56;6_;-A#^[E]QT((A 83HQ98L>;:!
M)%W1 0T:).GV8=@'6CI;0BE1(ZDZW:_?D;)5I74U[XMTI.Z>>^Y-Y'(OY"=5
M(&IXJ7BM5DZA=;/P/)456#%U+1JLZ<M6R(II6LJ=IQJ)++=&%?="WX^]BI6U
MLU[:O0>Y7HI6\[+&!PFJK2HFO]PB%_N5$SC'C<=R5VBSX:V7#=OA$^J/S8.D
ME=>CY&6%M2I%#1*W*^<F6-Q&1M\J_%[B7@UD,)%LA/AD%K_E*\<WA)!CI@T"
MH]=GO$/.#1#1^/N Z?0NC>%0/J*_M;%3+!NF\$[P/\I<%RLG<2#'+6NY?A3[
M=WB(QQ+,!%?V"?N#KN] UBHMJH,Q,:C*NGNSET,>SC$(#P:AY=TYLBS?,,W6
M2RGV((TVH1G!AFJMB5Q9FZ(\:4E?2[+3Z_=((2FX?&8;CNIJZ6D"-9^\[ !P
MVP&$/P"8PKVH=:'@USK'_+6]1V1Z1N&1T6TX"GC/Y#5, Q="/XQ&\*9]A%.+
M-QV/\,^;C=*2FN"O4S%V$+/3$&8P%JIA&:X<ZGR%\C,ZZY]_"F+_EQ&"LY[@
M; Q]_=0V#4=J=,TXW#%5P%L:%2CK;N1L[]8YO%+;,,[J#*$;W*&J1,XTYJ %
MT.1*VJQWP+L<G-@[E8Q1NJ>3\5P@; 4GW@9:FV8B5AEO<W*KALPS$^#VVP!)
M DT8NI"(4'4=A::C@/HA*_J&L*EXM35S[9XZ+SU,GP)\@QE6&Y0]YF@:+\N:
MB(I6D:FZ6DR>+>GA&$R>_CMDZ]SXFMB:-ZS,;1I8)=I:JV/Z<K#>*"GDO)46
M$\06+B!TXSBP;]^?3S[T+!\_? 2F%!*&V&CZ+W<8^)(5K-ZA=6(C(=LX#>D9
MS9/)F>WU-7G#G V\=\@##A<P2]UT'AL_H1NDT7?*O&2;DI>Z1+68W&29;(DQ
MOM"Y8[)MZB,H 9)^AU*:Z ?Z!!H$KI].C>"[B>^/H<,T=>=) K. "*639V%B
M%2/Z1)E DZ#C/I^G,#+O43_OT>B\WS/=R@Z?ZCCB_M1LCD*?/YO=&5S^0QRJ
M<^F<F)UO)^'LT";6_ (2-PH2LXA-'</IW,AS4\IX%A@Y@=2-(]^(*<S<:1+1
MN"%=/[::.B*(W"B*#H7LG#3LBVEB!1%U71)/WJ.B6:J:5MLQ("M4&BX)-O C
MN/H_37"J]M[@Z*U0[NP%0T%F9K@[A?O=_@YSTQW=7]6["Q#E=E?6BAALR=2_
MGE.M97>IZ!9:-/8@WPA-UP(K%G0/0VD4Z/M6"'U<& ?]S6[]+U!+ P04
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
M.8Y-?!WP@T E.VUDG,PY?S*=VVQD.4804$B58<#ZMX8Q4&J(M(R_&TZK7=(
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
M4B.J4O.#S=BX#T_V6>![Y\=[P"["JR>^P-^IJ^X+S\Y'<W:NVM+X=$46I93
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
M7*FJ#;B>H,87C,E=0P>HZ\#H'U!+ P04    " !(B:A:0TS*Z[T#  #$#@
M&0   'AL+W=O<FMS:&5E=',O<VAE970T,BYX;6RM5VV/HS80_BL6/55W4KN\
MA$!($Z3=T*HG]72KW=OVLP-.L YL:IO-]M]W;%@V(81-3OF28.-Y9I['8S.S
MV''Q7>:$*/12%DPNK5RI:F[;,LU)B>4-KPB#-QLN2JQ@*+:VK 3!F3$J"]MS
MG, N,656O#!S]R)>\%H5E)%[@61=EEC\=T<*OEM:KO4Z\4"WN=(3=KRH\)8\
M$O54W0L8V1U*1DO").4,";)96K?N/'&-@5GQ-R4[N?>,-)4UY]_UX'.VM!P=
M$2E(JC0$AK]GLB)%H9$@CG];4*OSJ0WWGU_1_S#D@<P:2[+BQ3\T4_G2FEDH
M(QM<%^J![_XD+:&IQDMY(<TOVK5K'0NEM52\;(TA@I*RYA^_M$+L&0#.L('7
M&GA] _^$P:0UF)QKX+<&OE&FH6)T2+#"\4+P'1)Z-:#I!R.FL0;ZE.E]?U0"
MWE*P4_%?!$23Z%?T6%=506!'%2[0"LL<;2 GT&?6Y);>(\41Y)N  =NBHC'\
MF!"%:?$)$)X>$_3QPR?T 5&&ON6\EIAE<F$K"%,[L],VI+LF).]$2!/TA3.5
M2_0[RTAV:&\#O8ZC]\KQSAL%_(+%#9JXOR#/\:8#\:S.-_<'S)-Q\X2DI\P/
MV$RZ'9L8O,D)O(.-2KN-HF\;-21Y@^D/8^K+92XKG)*E!;>').*96/'//[F!
M\]N07M<$2ZX$=J"EWVGICZ'')L\K3#,$XB%<\IHI"5*F10VII_-8Y025D.JU
M,)(CONF? 510O*8%590,)GL306 BT+?P<^P%@;NPG_<5'5CD..'AHF24RP\J
M->V4FHXJ];4C_?#U"6$I"0C%UW#V62,4>4ESS+;$*'F6,(W#Z1[G(/)ZNDR/
M=)F&LYXLHX'_H"Q!)TMP_F%<XP*SE*#F@_W.@0RN>2"O"99<">Q S[#3,SPS
MS9H4>DNV(0W#HPSRHR@,>CDTZO%2<<+CA/3<:-JY/& ]ZUC/1K.HSWKOX,R'
M>,^NF3O7!$NN!':@8M2I&(WFSFV:BAHN(_("1;&N3:#\0!PN< &%E!#Z]G[G
M1HJ.\LEUG6C2RZ?1*"X5;,"E,W.<X7QRG;>JSKGH'+U#O$7;#V,2A;/>3;L:
M=WHI]0&GOAN%T0GN>Q6M.\K]&]>7\85?Z1;SX& [LUG_.SWN^F(%!IQZX9$"
M]EYY7Q*Q-6V21*FN5IHJN)MM6K$[=[XR'4MO'EJT6].8V&\P37\'->Z6,@E:
M;0#2N0EA5T33,C4#Q2O31*RY@I;$/.;09A*A%\#[#>?J=: ==(UK_#]02P,$
M%     @ 2(FH6GS4=^D3 P  /PL  !D   !X;"]W;W)K<VAE971S+W-H965T
M-#,N>&ULK99K;YLP%(;_BL6JJ97:<DFX=0E2VVC:I%:+>MD^3/O@)"?!*F!F
MFZ3]][,-I2DAI$++AV"#W]?/.0;[C#:4/?$80*#G-,GXV(B%R"],D\]C2#$_
MISED\LF2LA0+V64KD^<,\$*+TL1T+,LS4TPR(QKI>U,6C6@A$I+!E"%>I"EF
M+U>0T,W8L(W7&W=D%0MUPXQ&.5[!/8C'?,IDSZQ=%B2%C!.:(0;+L7%I7US;
M6J!'_"2PX5MMI$*94?JD.M\78\-21)# 7"@++"]KN(8D44Z2XV]E:M1S*N%V
M^]7]JPY>!C/#'*YI\HLL1#PV @,M8(F+1-S1S3>H G*5WYPF7/^C3376,M"\
MX(*FE5@2I"0KK_BY2L26P![N$3B5P/FH8% )!CK0DDR'-<$"1R-&-XBIT=)-
M-71NM%I&0S*UC/>"R:=$ZD1T S('')VA6RP*1@21';I$/W)@6)!LA?0 =$/P
MC"3EX^,)"$R2$REZO)^@XZ,3=(1(AAYB6G"<+?C(%)),^9OSBN*JI'#V4-QB
M=HX&]BER+,=MD5]WRR<PK^7#]W)3YJ-.BE,GQ=%^@SU^'=&?HBE^D:^QX&A2
M /I].>."R7?Q3UO0Y2S#]EG4!WK!<SR'L2&_0 YL#4;T^9/M65_:4O"?S-XE
M9% G9-#E'NU9EJM2Y6F5VC#64>#:P<A<;X-W6O<$'];@PT/@7AMXJ7*WP&W;
M&?@-\D[OGN1N3>X>(O?;R-U=<LL;V@WR3N^>Y%Y-[ATB#]K(O1WRT'.M!GBG
M=4]POP;W#X&';>#^#OAP$+@-\$[KGN!!#1YT@C_$((_PI0#6AA_LOC&N_#7X
M.V?HR1_6_&$W/Q4X08G>:_-J>VV+)-R)Q W#P&M$TCE7STALZ^T\M3ICN0'.
M$4GS0L!"GHIR38"+UA/1VHGF++2MYKIT3]<WG*WRP/[ TM#Z0"P7*7D[$%M#
MLW?.!=<*@N8FU3;,\?VP'E8RFUO5C2HM9;&P(AF7*$NIL\Y]F4)65FME1]!<
M%SPS*F3YI)NQK'"!J0'R^9)2\=I1-51=,T?_ %!+ P04    " !(B:A:<];P
MD:L"  #F!@  &0   'AL+W=O<FMS:&5E=',O<VAE970T-"YX;6RM56MOFS 4
M_2M73-I#Z@J!T%4=06K23:NT3E&[QX>J'QRX"5;]H+9)FG\_VQ":;DFF3<N'
M8,,]Q^<<[$NVDNI>5X@&'CD3>A14QM1G8:B+"CG1Q[)&89_,I>+$V*E:A+I6
M2$H/XBR,H^@DY(2*(,_\O:G*,]D81@5.%>B&<Z+68V1R-0H&P>;&-5U4QMT(
M\ZPF"[Q!\ZV>*CL+>Y:2<A2:2@$*YZ/@?' V25V]+_A.<:6WQN"<S*2\=Y/+
M<A1$3A R+(QC(/:RQ DRYHBLC(>.,^B7=,#M\8;]H_=NO<R(QHED/VAIJE%P
M&D")<](P<RU7G[#SXP46DFG_#ZNN-@J@:+21O -;!9R*]DH>NQRV (-D#R#N
M /&O@'0/(.D B3?:*O.V+H@A>:;D"I2KMFQNX+/Q:.N&"O<6;XRR3ZG%F?S&
MR.*^DJQ$I5_!AX>&FC6\A?.RI"YFPN!2M'O%A?[Z @VA[(VMB*,X 8^&:ZP;
M550V3)@JN5"$P^T5\AFJ.UNH*Z)09Z&Q:MV:8=$IF[3*XCW*$KB2PE0:/H@2
MR^?XT+KLK<8;J^/X(.$564,T//+*=\GY$UH=0S+P\/2 FJ0//O%\R1Z^-NHC
MF#"B-<@Y?+6'4#=JW85Z^]D"X-(@UW<[U(Y;]N%N=G?VSW1-"AP%]G!K5$L,
M\I<O!B?1^UW6_Q/9LR"&?1##0^SYE\;M%)= NU-L;]ALIQ)F:S 5PD3RFHCU
MKAQ:\M23NY:US ?1:>1^6;C<]GA0Q3]Z3'N/Z4&/[2O=-E8VBHH%U*BH+(_V
M'Y+Q0>*_?<_I;V$]I=0:"[=:"4>U\!U60R$;8=JNTM_MF_BY[UWA4WG[!; G
M9D&%!H9S"XV.W]EU5=M5VXF1M6],,VELF_/#RGZ(4+D"^WPNI=E,W +]IRW_
M"5!+ P04    " !(B:A:E,IE6@<$   -$   &0   'AL+W=O<FMS:&5E=',O
M<VAE970T-2YX;6RM6-MNVS@0_15"6^RV0#>Z61=G;0-UDL7N0XH@;KH/BWV@
MI;%-1!)=DK+;O]\A)<LW67 *Y2&F*,[Q.3-#<L:C+1>O<@6@R/<\*^386BFU
MOK5MF:P@I_*&KZ' -PLN<JKP42QMN19 4V.49[;G.*&=4U98DY&9>Q*3$2]5
MQ@IX$D26>4[%CRED?#NV7&LW\<R6*Z4G[,EH39<P _6R?A+X9#<H*<NAD(P7
M1,!B;'UR;^_<4!N8%5\9;.7!F&@I<\Y?]</?Z=AR-"/((%$:@N+'!NX@RS02
M\OA6@UK-=VK#P_$._4\C'L7,J80[GOW#4K4:6[%%4EC0,E//?/L7U(("C9?P
M3)K_9%NO=2R2E%+QO#9&!CDKJD_ZO7;$@0'BM!MXM8%W:C"X8.#7!KX16C$S
MLNZIHI.1X%LB]&I$TP/C&V.-:EBAPSA3 M\RM%.3F>+)ZXIG*0CY&WGX5C+U
M@_Q.[GB^+A4UGN8+,J62)806*;EG6:D@)0]4%*Q82O($@LQ65 !Y?P^*LNP#
MFK_,[LG[=Q_(.V(3J5]*P@KR4C E/^(DCK^L>"D14(YLA3(T&3NI*4\KRMX%
MRCYYY(5:2?)0I) >V]LHO_&!M_/!U.L$?*3BAOCN1^(Y7M#"Y^YZ\T$'';\)
MB6_P_ MXG\L<!%5<W+;YIK(=M-OJ37\KUS2!L86[6H+8@#7Y]1<W=/YH$]83
MV)',02-ST(4^^8QG%"L2G@.A&\P;.L^ *$YP)L>L,VE3)V:;'RKPT(#KLVHS
M"9V!C_[?' H\7Q4/G<AI5ATQ#QKF06> [J'@N!4OABCH,T0]@1T)#1NA86>(
MJFV_-4<A[GFZP;Q<PFY'XZ4@%6YA/ ;:O%!!!P>N=YW(C9TP#$Z"U+8R#@>.
M&\;M@8H:_E%GH!X6"[PM] &6ZF,+[PLB(2D%4PQD:^BB/D/7$]B1]+B1'G>&
M;G=._V3PXK;@>?' B4]W6-O*.!HZH1>T!V_8*!A>D7RPNV?6>,\8[FUT*Z3H
M@(1S$X3.X9][PKO-)/;:*;O._C9UKG+[=;1KL#?Q;K6Y2/R@#' [B9LZ@- U
MIF+"JGM?Z,R1Y-]'R.<@_FL5T GZUOW2%]JQ"[R]"[R>3XL:L"_Y/:$=R]]7
M'6[G;5^E[K'H5LW^V8;W!\' /TW3\V61BP72A3S=%PUN=]7P#%()EN@])DW*
M=J9G)]:;X],3VK'R?='A=E<=/Y&>O18B?:$=R]^7(FYW+7)M>IX7$V$<1^%I
M>IXOBX9><'IEV0>-%1;E2]-O2BQ1RT)5_44S6_6T4]W3ZL;L9!Y[W4^FP[/W
M,%6CC-W#DA629+! 2.<F0DZBZCVK!\77IGV;<X7-H!FNL%\'H1?@^P7G:O>@
MOZ#Y!6#R/U!+ P04    " !(B:A:-KX^,OH"  !?"@  &0   'AL+W=O<FMS
M:&5E=',O<VAE970T-BYX;6S-5EUOFS 4_2L6D_8AK85 R$>7(#59IU5:I:C1
MMH=J#P[<!*N J6V2]M_OVA :TA1M$@]]2;!][_$YQ[[RG>RXN)<Q@"*/:9+)
MJ14KE5_8M@QC2*D\YSEDN++F(J4*AV)CRUP C4Q2FMBNXPSLE++,"B9F;B&"
M"2]4PC)8""*+-*7B:08)WTVMGK6?N&6;6.D).YCD= -+4#_SA<"17:-$+(5,
M,IX1 >NI==F[F(]TO GXQ6 G#[Z)5K+B_%X/KJ.IY6A"D$"H- +%ORW,(4DT
M$-)XJ#"M>DN=>/B]1_]FM*.6%94PY\EO%JEX:HTL$L&:%HFZY;OO4.GQ-5[(
M$VE^R:Z*=2P2%E+QM$I&!BG+RG_Z6/EPD( XIQ/<*L$]3NB_DN!5"9X16C(S
MLKY218.)X#LB=#2BZ0_CC<E&-2S3I[A4 E<9YJE@J7AX'_,D B$_D*N'@JDG
M<D8N,\4BEA3:8[*$L!!,,9#DZC%,B@@BLA8\)7.>YH6BYCSXFEQ1D;%L(\D"
M!%G&5 #Y^!449<DGA)1Z0DYLA:SUWG98,9R5#-U7&'KDAF<JQKTSW+B9;Z/:
M6K*[ESQS6P%OJ#@G7N\S<1W7/\%G_N_I_18Z7GT"GL'KMYT H3D68<A*+X6^
M>Y+<W4"Z O'GE&>MF+KT+V1.0YA:""M!;,$*WK_K#9POIP1W!-:0WZ_E]PVZ
M]XK\KF[:W0\$)M<*4GG2L'Z7AG4$UC#,KPWS6^^+-NRL=DP^.P8-QU0,)&RZ
M9I)P'?;NY>B>*<M3AI4L?,-"OP7;H.>.G<%X8F\/K7@9YOL]SZVC&AH'M<9!
MJ\9;D$JP4).5ICS:2J$5ZG]/MB.PANIAK7KX)DIAV*5A'8$U#!O5AHW>1"F,
M7MSQL3L<^T>5\#*J/_+'PZ-*L _>ZA3$QK0P$OD5F2K?L'JV[))FV"69;N)H
M'KNG2],TV,\P9>N%+]2&99(DL$9(YWR(G$39SI0#Q7/3$:RXPO["?,;8 8+0
M ;B^YESM!WJ#NJ<,_@)02P,$%     @ 2(FH6G4'=^AO @  U@4  !D   !X
M;"]W;W)K<VAE971S+W-H965T-#<N>&ULK51=3]LP%/TK5H8FD#:<)FT9+(W4
MEJ'QP(1@C(=I#VYRVU@X=F8[+?OWNW;2+*# ]K"7Q!_W')][['N3G=(/I@"P
MY+$4TLR"PMKJC%*3%5 R<ZPJD+BS5KID%J=Z0TVE@>4>5 H:A>&4EHS+($W\
MVK5.$U5;P25<:V+JLF3ZUP*$VLV"4;!?N.&;PKH%FB85V\ MV+OJ6N.,=BPY
M+T$:KB31L)X%\]'9<NSB?< W#CO3&Q.7R4JI!S>YS&=!Z 2!@,PZ!H:_+2Q!
M"$>$,GZVG$%WI /VQWOV"Y\[YK)B!I9*W//<%K/@0T!R6+-:V!NU^PQM/A/'
MEREA_)?LVM@P(%EMK"I;,"HHN6S^[+'UH0= GF% U *BYX#Q"X"X!<0^T4:9
M3^N<698F6NV(=M'(Y@;>&X_&;+ATMWAK->YRQ-GT!K8@:R 76I5DJ:35:*PA
M]]P69.F/!VW(>S+/<^Y\9X)<RN;QN%LX/ ?+N#C"B+O;<W)X<$0.")?D:Z%J
MPV1N$FI1I3N+9JVB1:,H>D%13*Y01F'()YE#_A1/,;LNQ6B?XB)ZE?"*Z6,2
MC]Z1*(PF WJ6_PX?OR(G[AR//5_\%\?7?<?QUGN&D^_SE?'K/X;\:_C'P_RN
M[,],Q3*8!5C7!O06@O3MF]$T_#B4_'\B>V+%N+-B_!I[^@6[E&$"!E]) YUZ
MJ.M%VS2.3T]/XX1N^_H'PD[B:3SIPAIEM%<BZ/#&=PY#,E5+VSRE;K5I3@ML
M3KZ(GZUCTYK[6J5_:)J.AP]EPZ4A M9(&1Z?8,GKIHLT$ZLJ7X@K9?&:_;#
MQ@O:!>#^6BF[G[@#NE:>_@902P,$%     @ 2(FH6N9=RJQ+ P  L@D  !D
M  !X;"]W;W)K<VAE971S+W-H965T-#@N>&ULQ5;;;N,V$/V5@1HL$J")+KYG
M;0%VTD4#U(41(^W#8A]H:6P1H4@M2=F;HA_?(>5HW=;1PP*+?;%YFS/GS PU
MG!Z4?C8%HH4OI9!F%A365K=A:+("2V9N5(62=K9*E\S25.]"4VEDN3<J19A$
MT3 L&9=!.O5K*YU.56T%E[C28.JR9/IE@4(=9D$<O"X\\EUAW4*83BNVPS7:
MIVJE:1:V*#DO41JN)&C<SH)Y?+N((V?@3_S!\6!.QN"D;)1Z=I.'?!9$CA$*
MS*R#8/2WQSL4PB$1C\]'T*#UZ0Q/QZ_H'[QX$K-A!N^4^)/GMI@%XP!RW+):
MV$=U^!6/@@8.+U/"^%\X-&='DP"RVEA5'HV)0<EE\\^^' -Q8M ;OV&0' T2
MS[MQY%G>,\O2J58'T.XTH;F!E^JMB1R7+BMKJVF7DYU-UU9ES]<+TI7#G2HI
MV8;Y<%W#/,^Y&S(!#[+)O]NXO$?+N+B""^ 2EEP(6C73T!(;AQEF1\^+QG/R
MAN<>+)6TA8%?9([YO^U#4M%*25ZE+)).P"73-]"+?X8D2@;PM+Z'RXLK, 73
M:#K@>VVD>AZ^]U:D'-#UYO^1FFO-Y ZI5"UL7N#TW(J]^.7Y@>D</OY&D/!@
ML32?SL6K\=\_[]]=SUM3L0QG =T_@WJ/0?KNIW@8O>]0UV_5];O0TR>I,5,[
MR?\BVMFIO$P92_=/,$L[5D$M]VC<F#E1!OZ&BW-B&G=C[\Y]&O9I/+KI3</]
M&9*#EN2@DV02Q7WP%4L5F5%@Z4+#2C )'Y=8;E"?#6LGYC>&==@R'O[@HAE^
M!W6C5MVH,Q^_UR[HH+:N8DI297QNV)Z^#VPC$.BK =O:UAJ!&U,S2AK5R[DK
MV8AIW U.BJ8W'$[Z\?A\W8Q;GN-.GDW)S"L*0<:;^/OV8^!R/7\T5YWETPG]
MC0&>M,0G/[A\)M]!71Q];3Y19V(^,*YAST2-P*@^RLJ),U"B+50.M?EO7SCV
ME6[0VESO&*MN%X)ES^NL4 +-$K55<JER%$VJS]$/3]IHB7KG'PN&:KN6MNFH
M[6K[()DW;?CK\>8U0[UHQTF)P"V91C<CJFG=/!":B565;\H;9:G%^V%!CRK4
M[@#M;Y6RKQ/GH'VFI?\ 4$L#!!0    ( $B)J%K=QQ8NYP(  $\)   9
M>&PO=V]R:W-H965T<R]S:&5E=#0Y+GAM;+V6;6_:,!#'OXJ53=,FK>2)$.@@
M$G2/+RJALJXOIKTPR4&B)G%F&^BD??B=[1!8&Z*IJ\H+8B>^N]_=/\YYO&/\
M5J0 DMP5>2DF5BIE=6[;(DZAH*+'*BCQR8KQ@DJ<\K4M*@XTT49%;GN.,[ +
MFI56--;WYCP:LXW,LQ+FG(A-45#^:P8YVTTLU]K?N,K6J50W[&A<T34L0%Y7
M<XXSN_&29 64(F,EX;":6%/W?.9J [WB6P8[<30F*I4E8[=J\B696(XB@AQB
MJ5Q0O&SA O)<>4*.G[53JXFI#(_'>^\?=?*8S)(*N&#Y39;(=&(-+9+ BFYR
M><5VGZ%.*%#^8I8+_4]V9FTXLDB\$9(5M3$2%%EIKO2N+L21@>^=,/!J T]S
MFT":\CV5-!ISMB-<K49O:J!3U=8(EY5*E87D^#1#.QDM)(MOSV:85T(N6(%B
M"ZK+=4861BC"5N3DJD^<EE*0U^]!TBQ_,[8E,BG/=ES'GYGXWHGX/KEDI4P%
M^5 FD/QM;V,N34+>/J&9U^GPDO(>\=VWQ'.\@+PD-A$IY2#J2T<$ORF9KR/T
M3T3XBF\E,;6X B%Y%DL<ZA*1ZS+#<GR_A&()_$=;.3I]JSUX+BH:P\3"32:
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
M/E1T\^+>H.A(EINC]XI)=9 WS1A(!%P;J.=KQN1+1T]0W=Y,_@=02P,$%
M  @ 2(FH6L5=6RY2 P  X@H  !D   !X;"]W;W)K<VAE971S+W-H965T-3,N
M>&ULM59M3]LP$/XK5H8FD$;SUA?*VDA00&,:$N)M'] ^N,FE]4CLSG9?^/<[
M.R&T)61C8E\2V[E[_#SG^.X&2R$?U!1 DU6><35TIEK/#EU7Q5/(J6J)&7#\
MD@J94XU3.7'53 )-K%.>N8'G==V<,NY$ [MV*:.!F.N,<;B41,WSG,K'8\C$
M<NCXSM/"%9M,M5EPH\&,3N :].WL4N+,K5 2E@-73' B(1TZ1_[AR/>,@[6X
M8[!4:V-BI(R%>#"3\V3H>(819!!K T'QM8 19)E!0AZ_2E"GVM,XKH^?T,^L
M>!0SI@I&(OO.$CT=.@<.22"E\TQ?B>47* 5U#%XL,F6?9%G8]@*'Q'.E15XZ
M(X.<\>)-5V4@UAR"SBL.0>D0;#GX[5<<PM(AM$(+9E;6"=4T&DBQ)-)8(YH9
MV-A8;U3#N#G&:RWQ*T,_'9WS6.1 ;N@*%-DG1TG"3'AI1LYY\9.88.^>@*8L
MVT.+V^L3LKNS1W8(X^1F*N:*\D0-7(UD#*0;EQL?%QL'KVP<D@O!]5214YY
MLNGOHHA*2?"DY#AH!+R@LD5"_Q,)O*!3PV?T]^[M!CIA%=C0XH5_#"P9H5#&
M)\#C1W+_#>W(N89<_:@+6@':K@<U=_I0S6@,0P<OK0*Y "?Z^,'O>I_K%+\3
MV(;^=J6_W80>W=%L7OP\-,-<07D,=7H+D*X%,2EG$05=SQNXBW4=C3O]HXY.
MI:/3J*,\1XWG""M,G@K([A@XI$SOU0GJO!3D^YUP2U&-5;_?[E56&U2[%=5N
M(]73- 6;%2U;275MQ L,3+S/>WNMH-/?8OB*65!/L5=1[#537,6@E.57!E&1
M5(J<8**+'VQ"3@A=4EF?4GHOPK;OO_A;7AJM_U$;M \JV@>-M,\@ 8DYT=SF
MKW/)5,***G1_ ?D89.U5;H1\ZU5^)[ -]?U*??]_I++^>^I_)[ -_;[W7"2]
MQO,WTA^!2H7MSO@G7C*B!:8#B@79YKC:\M<,B67&,[7&-X_ /,*:TE.(;X9Z
MJWIWK5O(04YL$Z5(+.9<%^6V6BT:M6/3J)EN8VL=&[@CV[:XSS!%]X?%=,*X
M(AFD".FU>ICO9-%0%1,M9K8G&0N-'8X=3K$)!6D,\'LJA'Z:F VJMC;Z#5!+
M P04    " !(B:A:%PD3#R@$   G"@  &0   'AL+W=O<FMS:&5E=',O<VAE
M970U-"YX;6REEF]OVS80QK_*006*%G CVZF3(G4,Y-_6 DMK).GV(N@+6CI;
M7"A2(RD[&?;A]Y"25;OQO&)[8XL4[^[W'$]'CE?&/KB"V=-CJ;0[30KOJY,T
M=5G!I7 'IF*--W-C2^$QM(O4599%'HU*E0[[_:.T%%(GDW&<F]K)V-1>2<U3
M2ZXN2V&?SEF9U6DR2-83-W)1^#"13L:56/ M^R_5U&*4=EYR6;)VTFBR/#]-
MS@8GY\=A?5SPJ^25VWBFH&1FS$,8?,Q/DWX 8L69#QX$_I9\P4H%1\#XH_69
M="&#X>;SVOM/43NTS(3C"Z-^D[DO3I-W">4\%[7R-V;U@5L]H^ O,\K%7UJU
M:_L)9;7SIFR-05!*W?R+QS8//V(P; V&D;L)%"DOA1>3L34KLF$UO(6'*#5:
M T[JL"FWWN*MA)V?W/("*?;T43<;'#+UAL[R7(9'H;9>O+ID+Z1RK\>I1^S@
M(<W:..=-G.$_Q#FD:Z-]X>A*YYQOVZ=@[L"':_#SX5Z'U\(>T.&@1\/^<$0W
M$8PMM7KV!#CL,G,8 QS^2V9NN#+62[V@^[.9\Q9U]'67_L;;V]W>PK=UXBJ1
M\6F"C\>Q77(R>?EB<-1_OX?U;<?Z=I_WR:>ZG$&\F>,[";1BIIA<(\#17[NS
MTF WCD?1<?B"EY/!.%WN8!EU+*,?9-&BK2';[DY 6>_4+I;1,Y;A;I:CCN5H
M+\NS/>S1Q>?+ZQZJ.I=+F=> NY,>R1(ZIZEQL>K)6/K9FKJB3Z)DNK]Z]*$+
MA9Q>Z;ID&W7M+(+].%/LO,P#4 AW44B>T]4C9W7H3/1Y/I<9,G=_S2&#7_?4
MQ7&G__B_Z9]:,Y>>7OUBG'M-URQ<;;E''^#^B^.\1Y?L,BNK('27SOUA[PJF
MRLK0Y<G,?N?8>4-%>+P( "0=>4,&_DOY)Q;'S&/-A2DKH9_>H EBEFWL/3IK
M]F<N-9YE+"B'KNL.Z&[MD)="U<*S6Y?]EG4#(]53[. Y88\U#CRI,U,VOL/0
M"<6;/FL'=QOK0"P<YMPS,J&4R1 ]@)G:9K 34%A 9MGD%@@&!8<7$J6$DP+_
MP9]26%DA0VZ=GY;_Y8MWP\'Q>TQ7;<&Y&,HL,825J[,LH&Q;$;!(T *YU(%2
MFGQ#D%#.?%,5Y?X_4>@VH9F%)A,@1&EJ, !I5CO4A'-;;*P7..=S**>\MJ&C
M;I-&+3CQ>Z$\A,:Z7 + Q&:"_7L ] )?@"\:/B2@\A$7[[MMMR:OD<Y>7/,=
MX/>Y;0Y8-*9VAK 5" JR0LPDC(0R&*PD0FX+;,-LZ<-=0SF$5"+6,C(;7*!T
M*O82,MS!KD\ZW3B\@;*(5Y1@ADC-.=[-=K>@L^;P_[:\N4+A3%R@O$CQ'*;]
M@V.T4MM<2YJ!-U6\"LR,A^[X6. FQS8LP/NY,7X]" &ZN^'D;U!+ P04
M" !(B:A:G0"#3'P$  #G&   &0   'AL+W=O<FMS:&5E=',O<VAE970U-2YX
M;6S-65MOVS84_BN$5@PMD$42'3N7V09R:;<4"QK$R?I0[(&6CFTB$NF15-P
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
M_.4!  !_(0  &@   'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR96QSS=H[3L-
M%(7AK41> )/[F/!00D5#B]B %28/D<269Q#)[HE"$8Y%08/F5-;8\O7?^)-E
M>_Z2=FW9=H>\V?9Y<MSO#GG1;$KI'T+(RTW:M_FFZ]/A?&35#?NVG)?#.O3M
M\KU=IZ#3Z2P,/V<TC_.?,R>OIS[]96*W6FV7Z:E;?NS3H?PR.'QVPWO>I%2:
MR6L[K%-9-.&XN^[.X;*1F_/D9O+\MFB&YS=I0NT@A2"M'V009/6#'(*\?E"$
MH%@_: 9!L_I!MQ!T6S_H#H+NZ@?=0]!]_2"9HHQ3@J01U@1:"W(M!%X+@BT$
M8@N2+01F"Z(M!&H+LBT$;@O"+01R"](M!'8+XBT$>BOJK01Z*^JM!'KKZ&&;
M0&]%O95 ;T6]E4!O1;V50&]%O95 ;T6]E4!O1;V50&]%O95 ;T.]C4!O0[V-
M0&]#O8U ;QN]+"'0VU!O(]#;4&\CT-M0;R/0VU!O(]#;4&\CT-M0;R/0VU%O
M)]#;46\GT-M1;R?0VU%O)]#;1R^["?1VU-L)]';4VPGT=M3;"?1VU-L)]';4
MVPGTCJAW)- [HMZ10.^(>D<"O2/J'0GTCJAW)- [CCY6$N@=4>_XGWKG<MJE
M?.WY7N/U_Y/J<CXW72]_67[O'-WC%YP#_&_Q^ 502P,$%     @ 2(FH6H_A
MMVG3 0  -B$  !,   !;0V]N=&5N=%]4>7!E<UTN>&ULS=K);L(P% 707T'9
M5L1X"!T$;-IN6Q;] 3=Y0$026[:A\/=UPB"UHJB(2KT;(F+[W1=;.IMD]+:U
MY'N;NFK\.%F$8!\8\_F":NU38ZF)(S/C:AWB7S=G5N=+/2<F!H,ARTT3J G]
MT-9()J,GFNE5%7K/FWC;EZ89)XXJG_0>=Q/;K'&BK:W*7(<XSM9-\2VEOT](
MX\INCE^4UM_$"0D[F="._!RP7_>Z)N?*@GI3[<*+KN,LMJF8#]N*?'J^Q(D>
MS6Q6YE28?%7'):FWCG3A%T2AKM)=T9OSR2'N,.U^^=7Y79ES@7'FU!GKXXDY
MNCSN<"3MZKZ-A<B%\OPC'A-CZ:N?C]K3+JCX97;<W@_CEMUY>-9=KM_CKV=\
MK']A'P*D#PG2AP+I(P/I8PC2QRU('W<@?=R#],$'*(V@B,I12.4HIG(45#F*
MJAR%58[B*D>!E:/(*E!D%2BR"A19!8JL D56@2*K0)%5H,@J4&05*+)*%%DE
MBJP215:)(JM$D56BR"I19)4HLDH4626*K I%5H4BJT*15:'(JE!D52BR*A19
M%8JL"D56A2)KAB)KAB)KAB)KAB)KAB)KAB)K]I^ROANS_.LW^>TUK779'/)9
M][G$Y!-02P$"% ,4    " !(B:A:1L=-2)4   #-    $
M@ $     9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0    ( $B)J%H"BM0Z\@
M "L"   1              "  <,   !D;V-0<F]P<R]C;W)E+GAM;%!+ 0(4
M Q0    ( $B)J%J97)PC$ 8  )PG   3              "  >0!  !X;"]T
M:&5M92]T:&5M93$N>&UL4$L! A0#%     @ 2(FH6M5K'KRU!0  JAX  !@
M             ("!)0@  'AL+W=O<FMS:&5E=',O<VAE970Q+GAM;%!+ 0(4
M Q0    ( $B)J%J*XIT7.@0  *X.   8              " @1 .  !X;"]W
M;W)K<VAE971S+W-H965T,BYX;6Q02P$"% ,4    " !(B:A:D*9BF%P&  !U
M&@  &               @(& $@  >&PO=V]R:W-H965T<R]S:&5E=#,N>&UL
M4$L! A0#%     @ 2(FH6L7C.W$2 P  F H  !@              ("!$AD
M 'AL+W=O<FMS:&5E=',O<VAE970T+GAM;%!+ 0(4 Q0    ( $B)J%K@"R=.
M?@8  -XN   8              " @5H<  !X;"]W;W)K<VAE971S+W-H965T
M-2YX;6Q02P$"% ,4    " !(B:A:R]90.E0'  # 'P  &
M@($.(P  >&PO=V]R:W-H965T<R]S:&5E=#8N>&UL4$L! A0#%     @ 2(FH
M6L?"-I], @  H04  !@              ("!F"H  'AL+W=O<FMS:&5E=',O
M<VAE970W+GAM;%!+ 0(4 Q0    ( $B)J%HS(XY18 (  ,('   8
M      " @1HM  !X;"]W;W)K<VAE971S+W-H965T."YX;6Q02P$"% ,4
M" !(B:A:=;R-U[,#  "7!P  &               @(&P+P  >&PO=V]R:W-H
M965T<R]S:&5E=#DN>&UL4$L! A0#%     @ 2(FH6FXLRW@]!0  LPP  !D
M             ("!F3,  'AL+W=O<FMS:&5E=',O<VAE970Q,"YX;6Q02P$"
M% ,4    " !(B:A:#K<\6>8$   &"P  &0              @($-.0  >&PO
M=V]R:W-H965T<R]S:&5E=#$Q+GAM;%!+ 0(4 Q0    ( $B)J%JZ'P1IQ@4
M )8.   9              " @2H^  !X;"]W;W)K<VAE971S+W-H965T,3(N
M>&UL4$L! A0#%     @ 2(FH6C(6[<YF!   BPD  !D              ("!
M)T0  'AL+W=O<FMS:&5E=',O<VAE970Q,RYX;6Q02P$"% ,4    " !(B:A:
MTPJ.LXD"  "L!0  &0              @('$2   >&PO=V]R:W-H965T<R]S
M:&5E=#$T+GAM;%!+ 0(4 Q0    ( $B)J%H7$^B)Z@,  "0)   9
M      " @81+  !X;"]W;W)K<VAE971S+W-H965T,34N>&UL4$L! A0#%
M  @ 2(FH6BZE%PT5 P  @ 8  !D              ("!I4\  'AL+W=O<FMS
M:&5E=',O<VAE970Q-BYX;6Q02P$"% ,4    " !(B:A:BH75OA\)   W'P
M&0              @('Q4@  >&PO=V]R:W-H965T<R]S:&5E=#$W+GAM;%!+
M 0(4 Q0    ( $B)J%I(Y+>MN00  +H+   9              " @4=<  !X
M;"]W;W)K<VAE971S+W-H965T,3@N>&UL4$L! A0#%     @ 2(FH6@33BH[;
M @  4P8  !D              ("!-V$  'AL+W=O<FMS:&5E=',O<VAE970Q
M.2YX;6Q02P$"% ,4    " !(B:A:20_YG( $  "1"@  &0
M@(%)9   >&PO=V]R:W-H965T<R]S:&5E=#(P+GAM;%!+ 0(4 Q0    ( $B)
MJ%I6C@IV&@4  ,T+   9              " @0!I  !X;"]W;W)K<VAE971S
M+W-H965T,C$N>&UL4$L! A0#%     @ 2(FH6HBV_7@""   :Q0  !D
M         ("!46X  'AL+W=O<FMS:&5E=',O<VAE970R,BYX;6Q02P$"% ,4
M    " !(B:A:D1>2%[T$  !^"P  &0              @(&*=@  >&PO=V]R
M:W-H965T<R]S:&5E=#(S+GAM;%!+ 0(4 Q0    ( $B)J%JQ[2=":P4  (4,
M   9              " @7Y[  !X;"]W;W)K<VAE971S+W-H965T,C0N>&UL
M4$L! A0#%     @ 2(FH6KJ"=J-Z P  ?@<  !D              ("!(($
M 'AL+W=O<FMS:&5E=',O<VAE970R-2YX;6Q02P$"% ,4    " !(B:A:^SYN
M7;@*  #"'   &0              @('1A   >&PO=V]R:W-H965T<R]S:&5E
M=#(V+GAM;%!+ 0(4 Q0    ( $B)J%KV50FIS (   8&   9
M  " @<"/  !X;"]W;W)K<VAE971S+W-H965T,C<N>&UL4$L! A0#%     @
M2(FH6AYK';MV @  FP4  !D              ("!PY(  'AL+W=O<FMS:&5E
M=',O<VAE970R."YX;6Q02P$"% ,4    " !(B:A:'.(L[?D"  !J!@  &0
M            @(%PE0  >&PO=V]R:W-H965T<R]S:&5E=#(Y+GAM;%!+ 0(4
M Q0    ( $B)J%J >R8KP ,  .4)   9              " @:"8  !X;"]W
M;W)K<VAE971S+W-H965T,S N>&UL4$L! A0#%     @ 2(FH6A@8K%BL P
MS0@  !D              ("!EYP  'AL+W=O<FMS:&5E=',O<VAE970S,2YX
M;6Q02P$"% ,4    " !(B:A:/]&-^;8$   %#   &0              @(%Z
MH   >&PO=V]R:W-H965T<R]S:&5E=#,R+GAM;%!+ 0(4 Q0    ( $B)J%HS
MN/E850,  -$'   9              " @6>E  !X;"]W;W)K<VAE971S+W-H
M965T,S,N>&UL4$L! A0#%     @ 2(FH6CF-C(0X @  O 0  !D
M     ("!\Z@  'AL+W=O<FMS:&5E=',O<VAE970S-"YX;6Q02P$"% ,4
M" !(B:A:EKZ'+)P"  #A!@  &0              @(%BJP  >&PO=V]R:W-H
M965T<R]S:&5E=#,U+GAM;%!+ 0(4 Q0    ( $B)J%I@^/V6S (  ,H'   9
M              " @36N  !X;"]W;W)K<VAE971S+W-H965T,S8N>&UL4$L!
M A0#%     @ 2(FH6MK[9DIQ @  C 8  !D              ("!.+$  'AL
M+W=O<FMS:&5E=',O<VAE970S-RYX;6Q02P$"% ,4    " !(B:A:D**7V\D#
M  "-$P  &0              @('@LP  >&PO=V]R:W-H965T<R]S:&5E=#,X
M+GAM;%!+ 0(4 Q0    ( $B)J%JO)I"9@P,  !T+   9              "
M@>"W  !X;"]W;W)K<VAE971S+W-H965T,SDN>&UL4$L! A0#%     @ 2(FH
M6JO%L=(F"@  Z7(  !D              ("!FKL  'AL+W=O<FMS:&5E=',O
M<VAE970T,"YX;6Q02P$"% ,4    " !(B:A:ZIN*,?T"   3"@  &0
M        @('WQ0  >&PO=V]R:W-H965T<R]S:&5E=#0Q+GAM;%!+ 0(4 Q0
M   ( $B)J%I#3,KKO0,  ,0.   9              " @2O)  !X;"]W;W)K
M<VAE971S+W-H965T-#(N>&UL4$L! A0#%     @ 2(FH6GS4=^D3 P  /PL
M !D              ("!'\T  'AL+W=O<FMS:&5E=',O<VAE970T,RYX;6Q0
M2P$"% ,4    " !(B:A:<];PD:L"  #F!@  &0              @(%IT
M>&PO=V]R:W-H965T<R]S:&5E=#0T+GAM;%!+ 0(4 Q0    ( $B)J%J4RF5:
M!P0   T0   9              " @4O3  !X;"]W;W)K<VAE971S+W-H965T
M-#4N>&UL4$L! A0#%     @ 2(FH6C:^/C+Z @  7PH  !D
M ("!B=<  'AL+W=O<FMS:&5E=',O<VAE970T-BYX;6Q02P$"% ,4    " !(
MB:A:=0=WZ&\"  #6!0  &0              @(&ZV@  >&PO=V]R:W-H965T
M<R]S:&5E=#0W+GAM;%!+ 0(4 Q0    ( $B)J%KF7<JL2P,  +()   9
M          " @6#=  !X;"]W;W)K<VAE971S+W-H965T-#@N>&UL4$L! A0#
M%     @ 2(FH6MW'%B[G @  3PD  !D              ("!XN   'AL+W=O
M<FMS:&5E=',O<VAE970T.2YX;6Q02P$"% ,4    " !(B:A:A[J+HC@#  "(
M#   &0              @($ Y   >&PO=V]R:W-H965T<R]S:&5E=#4P+GAM
M;%!+ 0(4 Q0    ( $B)J%IB!0K34 ,  " )   9              " @6_G
M  !X;"]W;W)K<VAE971S+W-H965T-3$N>&UL4$L! A0#%     @ 2(FH6J@D
M)JZO P  R1$  !D              ("!]NH  'AL+W=O<FMS:&5E=',O<VAE
M970U,BYX;6Q02P$"% ,4    " !(B:A:Q5U;+E(#  #B"@  &0
M    @('<[@  >&PO=V]R:W-H965T<R]S:&5E=#4S+GAM;%!+ 0(4 Q0    (
M $B)J%H7"1,/* 0  "<*   9              " @67R  !X;"]W;W)K<VAE
M971S+W-H965T-30N>&UL4$L! A0#%     @ 2(FH6IT @TQ\!   YQ@  !D
M             ("!Q/8  'AL+W=O<FMS:&5E=',O<VAE970U-2YX;6Q02P$"
M% ,4    " !(B:A:PR==^B<$  !X$0  &0              @(%W^P  >&PO
M=V]R:W-H965T<R]S:&5E=#4V+GAM;%!+ 0(4 Q0    ( $B)J%J_DU0I+P,
M "03   -              "  =7_  !X;"]S='EL97,N>&UL4$L! A0#%
M  @ 2(FH6I>*NQS     $P(   L              ( !+P,! %]R96QS+RYR
M96QS4$L! A0#%     @ 2(FH6I!NY'"^!   +24   \              ( !
M& 0! 'AL+W=O<FMB;V]K+GAM;%!+ 0(4 Q0    ( $B)J%H,/Y#\Y0$  '\A
M   :              "  0,) 0!X;"]?<F5L<R]W;W)K8F]O:RYX;6PN<F5L
M<U!+ 0(4 Q0    ( $B)J%J/X;=ITP$  #8A   3              "  2 +
K 0!;0V]N=&5N=%]4>7!E<UTN>&UL4$L%!@    !  $  =Q$  "0- 0    $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>65
<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>66
<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>68
<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>108</ContextCount>
  <ElementCount>228</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>46</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>6</UnitCount>
  <MyReports>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>100000 - Document - Cover Page</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/CoverPage</Role>
      <ShortName>Cover Page</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>100010 - Statement - Condensed Consolidated Statements Of Comprehensive Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome</Role>
      <ShortName>Condensed Consolidated Statements Of Comprehensive Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>100030 - Statement - Condensed Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets</Role>
      <ShortName>Condensed Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>100040 - Statement - Condensed Consolidated Balance Sheets (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>Condensed Consolidated Balance Sheets (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>100050 - Statement - Condensed Consolidated Statements of Changes in Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity</Role>
      <ShortName>Condensed Consolidated Statements of Changes in Stockholders' Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>100060 - Statement - Condensed Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows</Role>
      <ShortName>Condensed Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.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>7</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.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>8</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>995457 - Disclosure - Business and Organization</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/BusinessAndOrganization</Role>
      <ShortName>Business and Organization</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>995467 - Disclosure - Basis of Presentation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/BasisOfPresentation</Role>
      <ShortName>Basis of Presentation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>995477 - Disclosure - Recently Adopted Accounting Standards</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/RecentlyAdoptedAccountingStandards</Role>
      <ShortName>Recently Adopted Accounting Standards</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>995487 - Disclosure - New Accounting Standards Not Yet Adopted</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/NewAccountingStandardsNotYetAdopted</Role>
      <ShortName>New Accounting Standards Not Yet Adopted</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>995497 - Disclosure - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/Inventories</Role>
      <ShortName>Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>995507 - Disclosure - Prepaid Expenses and Other Assets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssets</Role>
      <ShortName>Prepaid Expenses and Other Assets</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>995517 - Disclosure - Goodwill and Other Intangible Assets, Net</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNet</Role>
      <ShortName>Goodwill and Other Intangible Assets, Net</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>995527 - Disclosure - Accrued Expenses and Other Liabilities</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilities</Role>
      <ShortName>Accrued Expenses and Other Liabilities</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>995537 - Disclosure - Debt</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/Debt</Role>
      <ShortName>Debt</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>995547 - Disclosure - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/Leases</Role>
      <ShortName>Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>995557 - Disclosure - Financial Instruments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/FinancialInstruments</Role>
      <ShortName>Financial Instruments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>995567 - Disclosure - Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/StockholdersEquity</Role>
      <ShortName>Stockholders' Equity</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>995577 - Disclosure - Revenue From Contracts With Customers</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/RevenueFromContractsWithCustomers</Role>
      <ShortName>Revenue From Contracts With Customers</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>995587 - Disclosure - Stock-Based Compensation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/StockBasedCompensation</Role>
      <ShortName>Stock-Based Compensation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>995597 - Disclosure - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/IncomeTaxes</Role>
      <ShortName>Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>995607 - Disclosure - Segment Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/DisclosureSegmentInformation</Role>
      <ShortName>Segment Information</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>995617 - Disclosure - Seasonality</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/Seasonality</Role>
      <ShortName>Seasonality</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>995627 - Disclosure - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>26</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>995637 - Disclosure - Inventories (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/InventoriesTables</Role>
      <ShortName>Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.trex.com/20250331/taxonomy/role/Inventories</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>995647 - Disclosure - Prepaid Expenses and Other Assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsTables</Role>
      <ShortName>Prepaid Expenses and Other Assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssets</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>995657 - Disclosure - Accrued Expenses and Other Liabilities (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesTables</Role>
      <ShortName>Accrued Expenses and Other Liabilities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilities</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>995667 - Disclosure - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/LeasesTables</Role>
      <ShortName>Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.trex.com/20250331/taxonomy/role/Leases</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>995677 - Disclosure - Stockholders' Equity (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/StockholdersEquityTables</Role>
      <ShortName>Stockholders' Equity (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.trex.com/20250331/taxonomy/role/StockholdersEquity</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>995687 - Disclosure - Stock-Based Compensation (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationTables</Role>
      <ShortName>Stock-Based Compensation (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.trex.com/20250331/taxonomy/role/StockBasedCompensation</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>995697 - Disclosure - Commitments and Contingencies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesTables</Role>
      <ShortName>Commitments and Contingencies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingencies</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>995707 - Disclosure - Business and Organization - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/BusinessAndOrganizationAdditionalInformationDetail</Role>
      <ShortName>Business and Organization - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>34</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>995717 - Disclosure - Recently Adopted Accounting Standards - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/DisclosureRecentlyAdoptedAccountingStandardsAdditionalInformationDetails</Role>
      <ShortName>Recently Adopted Accounting Standards - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>35</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>995727 - Disclosure - Inventories - Summary of Inventories (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/InventoriesSummaryOfInventoriesDetail</Role>
      <ShortName>Inventories - Summary of Inventories (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>36</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>995737 - Disclosure - Prepaid Expenses and Other Assets - Summary of Prepaid Expenses and Other Assets (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsSummaryOfPrepaidExpensesAndOtherAssetsDetail</Role>
      <ShortName>Prepaid Expenses and Other Assets - Summary of Prepaid Expenses and Other Assets (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>37</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>995747 - Disclosure - Goodwill and Other Intangible Assets, Net - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail</Role>
      <ShortName>Goodwill and Other Intangible Assets, Net - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>38</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>995757 - Disclosure - Accrued Expenses and Other Liabilities - Summary of Accrued Expenses and Other Liabilities (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail</Role>
      <ShortName>Accrued Expenses and Other Liabilities - Summary of Accrued Expenses and Other Liabilities (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>39</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>995767 - Disclosure - Debt - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail</Role>
      <ShortName>Debt - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>40</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>995777 - Disclosure - Leases - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/LeasesAdditionalInformationDetail</Role>
      <ShortName>Leases - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>41</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>995787 - Disclosure - Leases - Supplemental Cash flow Information to operating leases (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail</Role>
      <ShortName>Leases - Supplemental Cash flow Information to operating leases (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>42</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>995797 - Disclosure - Leases - Maturities of Operating Lease Liabilities (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail</Role>
      <ShortName>Leases - Maturities of Operating Lease Liabilities (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>43</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>995807 - Disclosure - Stockholders' Equity - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAdditionalInformationDetail</Role>
      <ShortName>Stockholders' Equity - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>995817 - Disclosure - Stockholders' Equity - Computation of Basic and Diluted Earnings Per Share (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail</Role>
      <ShortName>Stockholders' Equity - Computation of Basic and Diluted Earnings Per Share (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>45</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>995827 - Disclosure - Stockholders' Equity - Antidilutive Securities Excluded from Computation of Earnings Per Share (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetail</Role>
      <ShortName>Stockholders' Equity - Antidilutive Securities Excluded from Computation of Earnings Per Share (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>46</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>995837 - Disclosure - Revenue From Contracts With Customers - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/RevenueFromContractsWithCustomersAdditionalInformationDetail</Role>
      <ShortName>Revenue From Contracts With Customers - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>995847 - Disclosure - Stock-Based Compensation - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationAdditionalInformationDetail</Role>
      <ShortName>Stock-Based Compensation - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>995857 - Disclosure - Stock-Based Compensation - Summary of Stock-Based Compensation Grants (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationGrantsDetail</Role>
      <ShortName>Stock-Based Compensation - Summary of Stock-Based Compensation Grants (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>49</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>995867 - Disclosure - Stock-Based Compensation - Summary of Stock-Based Compensation Expenses (Parenthetical) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/DisclosureStockbasedCompensationSummaryOfStockbasedCompensationExpensesParentheticalDetails</Role>
      <ShortName>Stock-Based Compensation - Summary of Stock-Based Compensation Expenses (Parenthetical) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>995877 - Disclosure - Stock-Based Compensation - Summary of Assumptions Used to Estimate Fair Value of Each SAR (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfAssumptionsUsedToEstimateFairValueOfEachSarDetail</Role>
      <ShortName>Stock-Based Compensation - Summary of Assumptions Used to Estimate Fair Value of Each SAR (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>995887 - Disclosure - Stock-Based Compensation - Summary of Stock-Based Compensation Expenses (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationExpensesDetail</Role>
      <ShortName>Stock-Based Compensation - Summary of Stock-Based Compensation Expenses (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>995897 - Disclosure - Income Taxes - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/IncomeTaxesAdditionalInformationDetail</Role>
      <ShortName>Income Taxes - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>995907 - Disclosure - Segment Information - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/DisclosureSegmentInformationAdditionalInformationDetails</Role>
      <ShortName>Segment Information - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>54</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>995917 - Disclosure - Commitments and Contingencies - Additional Information (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail</Role>
      <ShortName>Commitments and Contingencies - Additional Information (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="trex-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>995927 - Disclosure - Commitments and Contingencies - Summary of Reconciliation of Company's Residential Product Warranty Reserve (Detail)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail</Role>
      <ShortName>Commitments and Contingencies - Summary of Reconciliation of Company's Residential Product Warranty Reserve (Detail)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>56</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="trex-20250331.htm">trex-20250331.htm</File>
    <File>trex-20250331.xsd</File>
  </InputFiles>
  <SupplementalFiles>
    <File>img245582526_0.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy items="406">http://fasb.org/us-gaap/2024</BaseTaxonomy>
    <BaseTaxonomy items="29">http://xbrl.sec.gov/dei/2024</BaseTaxonomy>
    <BaseTaxonomy items="4">http://xbrl.sec.gov/ecd/2024</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>false</HasPresentationLinkbase>
  <HasCalculationLinkbase>false</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>71
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "trex-20250331.htm": {
   "nsprefix": "trex",
   "nsuri": "http://www.trex.com/20250331",
   "dts": {
    "inline": {
     "local": [
      "trex-20250331.htm"
     ]
    },
    "schema": {
     "local": [
      "trex-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/arcrole/esma-arcrole-2018-11-21.xsd",
      "http://www.xbrl.org/lrr/role/negated-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/2023/calculation-1.1.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd",
      "https://www.xbrl.org/dtr/type/2024-01-31/types.xsd",
      "https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd",
      "https://xbrl.fasb.org/srt/2024/elts/srt-roles-2024.xsd",
      "https://xbrl.fasb.org/srt/2024/elts/srt-types-2024.xsd",
      "https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd",
      "https://xbrl.fasb.org/us-gaap/2024/elts/us-roles-2024.xsd",
      "https://xbrl.fasb.org/us-gaap/2024/elts/us-types-2024.xsd",
      "https://xbrl.sec.gov/country/2024/country-2024.xsd",
      "https://xbrl.sec.gov/dei/2024/dei-2024.xsd",
      "https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd",
      "https://xbrl.sec.gov/ecd/2024/ecd-sub-2024.xsd",
      "https://xbrl.sec.gov/stpr/2024/stpr-2024.xsd"
     ]
    }
   },
   "keyStandard": 208,
   "keyCustom": 20,
   "axisStandard": 16,
   "axisCustom": 2,
   "memberStandard": 16,
   "memberCustom": 28,
   "hidden": {
    "total": 13,
    "http://fasb.org/us-gaap/2024": 9,
    "http://xbrl.sec.gov/dei/2024": 4
   },
   "contextCount": 108,
   "entityCount": 1,
   "segmentCount": 46,
   "elementCount": 496,
   "unitCount": 6,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2024": 406,
    "http://xbrl.sec.gov/dei/2024": 29,
    "http://xbrl.sec.gov/ecd/2024": 4
   },
   "report": {
    "R1": {
     "role": "http://www.trex.com/20250331/taxonomy/role/CoverPage",
     "longName": "100000 - Document - Cover Page",
     "shortName": "Cover Page",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "dei:DocumentFiscalYearFocus",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "dei:DocumentPeriodEndDate",
       "span",
       "p",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "dei:DocumentFiscalYearFocus",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "dei:DocumentPeriodEndDate",
       "span",
       "p",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R2": {
     "role": "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome",
     "longName": "100010 - Statement - Condensed Consolidated Statements Of Comprehensive Income",
     "shortName": "Condensed Consolidated Statements Of Comprehensive Income",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "2",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "unique": true
     }
    },
    "R3": {
     "role": "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets",
     "longName": "100030 - Statement - Condensed Consolidated Balance Sheets",
     "shortName": "Condensed Consolidated Balance Sheets",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "3",
     "firstAnchor": {
      "contextRef": "C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R4": {
     "role": "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheetsParenthetical",
     "longName": "100040 - Statement - Condensed Consolidated Balance Sheets (Parenthetical)",
     "shortName": "Condensed Consolidated Balance Sheets (Parenthetical)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "4",
     "firstAnchor": {
      "contextRef": "C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9",
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "unitRef": "U_UnitedStatesOfAmericaDollarsShare",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9",
      "name": "us-gaap:PreferredStockParOrStatedValuePerShare",
      "unitRef": "U_UnitedStatesOfAmericaDollarsShare",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R5": {
     "role": "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity",
     "longName": "100050 - Statement - Condensed Consolidated Statements of Changes in Stockholders' Equity",
     "shortName": "Condensed Consolidated Statements of Changes in Stockholders' Equity",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "5",
     "firstAnchor": {
      "contextRef": "C_b52c11ea-f54a-4a7c-9334-a80a4881334a",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_b52c11ea-f54a-4a7c-9334-a80a4881334a",
      "name": "us-gaap:StockholdersEquity",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R6": {
     "role": "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows",
     "longName": "100060 - Statement - Condensed Consolidated Statements of Cash Flows",
     "shortName": "Condensed Consolidated Statements of Cash Flows",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "6",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:ProfitLoss",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:ProfitLoss",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R7": {
     "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": "7",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R8": {
     "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": "8",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "ecd:Rule10b51ArrAdoptedFlag",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "ecd:Rule10b51ArrAdoptedFlag",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R9": {
     "role": "http://www.trex.com/20250331/taxonomy/role/BusinessAndOrganization",
     "longName": "995457 - Disclosure - Business and Organization",
     "shortName": "Business and Organization",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "9",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:NatureOfOperations",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:NatureOfOperations",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R10": {
     "role": "http://www.trex.com/20250331/taxonomy/role/BasisOfPresentation",
     "longName": "995467 - Disclosure - Basis of Presentation",
     "shortName": "Basis of Presentation",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "10",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R11": {
     "role": "http://www.trex.com/20250331/taxonomy/role/RecentlyAdoptedAccountingStandards",
     "longName": "995477 - Disclosure - Recently Adopted Accounting Standards",
     "shortName": "Recently Adopted Accounting Standards",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "11",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R12": {
     "role": "http://www.trex.com/20250331/taxonomy/role/NewAccountingStandardsNotYetAdopted",
     "longName": "995487 - Disclosure - New Accounting Standards Not Yet Adopted",
     "shortName": "New Accounting Standards Not Yet Adopted",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "12",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "trex:DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "trex:DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R13": {
     "role": "http://www.trex.com/20250331/taxonomy/role/Inventories",
     "longName": "995497 - Disclosure - Inventories",
     "shortName": "Inventories",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "13",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R14": {
     "role": "http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssets",
     "longName": "995507 - Disclosure - Prepaid Expenses and Other Assets",
     "shortName": "Prepaid Expenses and Other Assets",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "14",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "trex:PrepaidAndOtherCurrentAssetsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "trex:PrepaidAndOtherCurrentAssetsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R15": {
     "role": "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNet",
     "longName": "995517 - Disclosure - Goodwill and Other Intangible Assets, Net",
     "shortName": "Goodwill and Other Intangible Assets, Net",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "15",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R16": {
     "role": "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilities",
     "longName": "995527 - Disclosure - Accrued Expenses and Other Liabilities",
     "shortName": "Accrued Expenses and Other Liabilities",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "16",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R17": {
     "role": "http://www.trex.com/20250331/taxonomy/role/Debt",
     "longName": "995537 - Disclosure - Debt",
     "shortName": "Debt",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "17",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R18": {
     "role": "http://www.trex.com/20250331/taxonomy/role/Leases",
     "longName": "995547 - Disclosure - Leases",
     "shortName": "Leases",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "18",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R19": {
     "role": "http://www.trex.com/20250331/taxonomy/role/FinancialInstruments",
     "longName": "995557 - Disclosure - Financial Instruments",
     "shortName": "Financial Instruments",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "19",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:FinancialInstrumentsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:FinancialInstrumentsDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R20": {
     "role": "http://www.trex.com/20250331/taxonomy/role/StockholdersEquity",
     "longName": "995567 - Disclosure - Stockholders' Equity",
     "shortName": "Stockholders' Equity",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "20",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R21": {
     "role": "http://www.trex.com/20250331/taxonomy/role/RevenueFromContractsWithCustomers",
     "longName": "995577 - Disclosure - Revenue From Contracts With Customers",
     "shortName": "Revenue From Contracts With Customers",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "21",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R22": {
     "role": "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensation",
     "longName": "995587 - Disclosure - Stock-Based Compensation",
     "shortName": "Stock-Based Compensation",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "22",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R23": {
     "role": "http://www.trex.com/20250331/taxonomy/role/IncomeTaxes",
     "longName": "995597 - Disclosure - Income Taxes",
     "shortName": "Income Taxes",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "23",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R24": {
     "role": "http://www.trex.com/20250331/taxonomy/role/DisclosureSegmentInformation",
     "longName": "995607 - Disclosure - Segment Information",
     "shortName": "Segment Information",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "24",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R25": {
     "role": "http://www.trex.com/20250331/taxonomy/role/Seasonality",
     "longName": "995617 - Disclosure - Seasonality",
     "shortName": "Seasonality",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "25",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "trex:SeasonalityDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "trex:SeasonalityDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R26": {
     "role": "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingencies",
     "longName": "995627 - Disclosure - Commitments and Contingencies",
     "shortName": "Commitments and Contingencies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "26",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R27": {
     "role": "http://www.trex.com/20250331/taxonomy/role/InventoriesTables",
     "longName": "995637 - Disclosure - Inventories (Tables)",
     "shortName": "Inventories (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "27",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R28": {
     "role": "http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsTables",
     "longName": "995647 - Disclosure - Prepaid Expenses and Other Assets (Tables)",
     "shortName": "Prepaid Expenses and Other Assets (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "28",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "trex:PrepaidExpenseAndOtherAssetsCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "trex:PrepaidAndOtherCurrentAssetsDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "trex:PrepaidExpenseAndOtherAssetsCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "trex:PrepaidAndOtherCurrentAssetsDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R29": {
     "role": "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesTables",
     "longName": "995657 - Disclosure - Accrued Expenses and Other Liabilities (Tables)",
     "shortName": "Accrued Expenses and Other Liabilities (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "29",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "trex:ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "trex:ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R30": {
     "role": "http://www.trex.com/20250331/taxonomy/role/LeasesTables",
     "longName": "995667 - Disclosure - Leases (Tables)",
     "shortName": "Leases (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "30",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "trex:SupplementalFinancialInformationOfOperatingLeasesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "trex:SupplementalFinancialInformationOfOperatingLeasesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R31": {
     "role": "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityTables",
     "longName": "995677 - Disclosure - Stockholders' Equity (Tables)",
     "shortName": "Stockholders' Equity (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "31",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R32": {
     "role": "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationTables",
     "longName": "995687 - Disclosure - Stock-Based Compensation (Tables)",
     "shortName": "Stock-Based Compensation (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "32",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "div",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R33": {
     "role": "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesTables",
     "longName": "995697 - Disclosure - Commitments and Contingencies (Tables)",
     "shortName": "Commitments and Contingencies (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "33",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R34": {
     "role": "http://www.trex.com/20250331/taxonomy/role/BusinessAndOrganizationAdditionalInformationDetail",
     "longName": "995707 - Disclosure - Business and Organization - Additional Information (Detail)",
     "shortName": "Business and Organization - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "34",
     "firstAnchor": null,
     "uniqueAnchor": null
    },
    "R35": {
     "role": "http://www.trex.com/20250331/taxonomy/role/DisclosureRecentlyAdoptedAccountingStandardsAdditionalInformationDetails",
     "longName": "995717 - Disclosure - Recently Adopted Accounting Standards - Additional Information (Details)",
     "shortName": "Recently Adopted Accounting Standards - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "35",
     "firstAnchor": {
      "contextRef": "C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d",
      "name": "us-gaap:ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d",
      "name": "us-gaap:ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "p",
       "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R36": {
     "role": "http://www.trex.com/20250331/taxonomy/role/InventoriesSummaryOfInventoriesDetail",
     "longName": "995727 - Disclosure - Inventories - Summary of Inventories (Detail)",
     "shortName": "Inventories - Summary of Inventories (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "36",
     "firstAnchor": {
      "contextRef": "C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9",
      "name": "us-gaap:InventoryFinishedGoods",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "div",
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9",
      "name": "us-gaap:InventoryFinishedGoods",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "div",
       "us-gaap:InventoryDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R37": {
     "role": "http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsSummaryOfPrepaidExpensesAndOtherAssetsDetail",
     "longName": "995737 - Disclosure - Prepaid Expenses and Other Assets - Summary of Prepaid Expenses and Other Assets (Detail)",
     "shortName": "Prepaid Expenses and Other Assets - Summary of Prepaid Expenses and Other Assets (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "37",
     "firstAnchor": {
      "contextRef": "C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9",
      "name": "us-gaap:PrepaidExpenseCurrent",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "trex:PrepaidExpenseAndOtherAssetsCurrentTableTextBlock",
       "div",
       "trex:PrepaidAndOtherCurrentAssetsDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9",
      "name": "us-gaap:PrepaidExpenseCurrent",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "trex:PrepaidExpenseAndOtherAssetsCurrentTableTextBlock",
       "div",
       "trex:PrepaidAndOtherCurrentAssetsDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R38": {
     "role": "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail",
     "longName": "995747 - Disclosure - Goodwill and Other Intangible Assets, Net - Additional Information (Detail)",
     "shortName": "Goodwill and Other Intangible Assets, Net - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "38",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:AmortizationOfIntangibleAssets",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:AmortizationOfIntangibleAssets",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R39": {
     "role": "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail",
     "longName": "995757 - Disclosure - Accrued Expenses and Other Liabilities - Summary of Accrued Expenses and Other Liabilities (Detail)",
     "shortName": "Accrued Expenses and Other Liabilities - Summary of Accrued Expenses and Other Liabilities (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "39",
     "firstAnchor": {
      "contextRef": "C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9",
      "name": "us-gaap:AccruedMarketingCostsCurrent",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "trex:ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock",
       "div",
       "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9",
      "name": "us-gaap:AccruedMarketingCostsCurrent",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "trex:ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock",
       "div",
       "us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R40": {
     "role": "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail",
     "longName": "995767 - Disclosure - Debt - Additional Information (Detail)",
     "shortName": "Debt - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "40",
     "firstAnchor": {
      "contextRef": "C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9",
      "name": "us-gaap:LinesOfCreditCurrent",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_ea205a13-9bb6-4a00-b70a-a25ec263eb02",
      "name": "us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "unique": true
     }
    },
    "R41": {
     "role": "http://www.trex.com/20250331/taxonomy/role/LeasesAdditionalInformationDetail",
     "longName": "995777 - Disclosure - Leases - Additional Information (Detail)",
     "shortName": "Leases - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "41",
     "firstAnchor": {
      "contextRef": "C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9",
      "name": "us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent",
      "unitRef": "U_pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9",
      "name": "us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent",
      "unitRef": "U_pure",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R42": {
     "role": "http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail",
     "longName": "995787 - Disclosure - Leases - Supplemental Cash flow Information to operating leases (Detail)",
     "shortName": "Leases - Supplemental Cash flow Information to operating leases (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "42",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:OperatingLeasePayments",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "trex:SupplementalFinancialInformationOfOperatingLeasesTableTextBlock",
       "div",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:OperatingLeasePayments",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "trex:SupplementalFinancialInformationOfOperatingLeasesTableTextBlock",
       "div",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R43": {
     "role": "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail",
     "longName": "995797 - Disclosure - Leases - Maturities of Operating Lease Liabilities (Detail)",
     "shortName": "Leases - Maturities of Operating Lease Liabilities (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "43",
     "firstAnchor": {
      "contextRef": "C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R44": {
     "role": "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAdditionalInformationDetail",
     "longName": "995807 - Disclosure - Stockholders' Equity - Additional Information (Detail)",
     "shortName": "Stockholders' Equity - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "44",
     "firstAnchor": {
      "contextRef": "C_fdba3cdf-18f8-4b3e-a8cc-7b89cf63fec1",
      "name": "us-gaap:TreasuryStockSharesAcquired",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_fdba3cdf-18f8-4b3e-a8cc-7b89cf63fec1",
      "name": "us-gaap:TreasuryStockSharesAcquired",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R45": {
     "role": "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail",
     "longName": "995817 - Disclosure - Stockholders' Equity - Computation of Basic and Diluted Earnings Per Share (Detail)",
     "shortName": "Stockholders' Equity - Computation of Basic and Diluted Earnings Per Share (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "45",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_d01351bb-f834-4793-bab7-1481202ca75e",
      "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "unique": true
     }
    },
    "R46": {
     "role": "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetail",
     "longName": "995827 - Disclosure - Stockholders' Equity - Antidilutive Securities Excluded from Computation of Earnings Per Share (Detail)",
     "shortName": "Stockholders' Equity - Antidilutive Securities Excluded from Computation of Earnings Per Share (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "46",
     "firstAnchor": {
      "contextRef": "C_9915ab83-de30-458e-824c-8c26ea72826b",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_9915ab83-de30-458e-824c-8c26ea72826b",
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:StockholdersEquityNoteDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R47": {
     "role": "http://www.trex.com/20250331/taxonomy/role/RevenueFromContractsWithCustomersAdditionalInformationDetail",
     "longName": "995837 - Disclosure - Revenue From Contracts With Customers - Additional Information (Detail)",
     "shortName": "Revenue From Contracts With Customers - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "47",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R48": {
     "role": "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationAdditionalInformationDetail",
     "longName": "995847 - Disclosure - Stock-Based Compensation - Additional Information (Detail)",
     "shortName": "Stock-Based Compensation - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "48",
     "firstAnchor": {
      "contextRef": "C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9",
      "name": "us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9",
      "name": "us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R49": {
     "role": "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationGrantsDetail",
     "longName": "995857 - Disclosure - Stock-Based Compensation - Summary of Stock-Based Compensation Grants (Detail)",
     "shortName": "Stock-Based Compensation - Summary of Stock-Based Compensation Grants (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "49",
     "firstAnchor": {
      "contextRef": "C_ddc4dbae-5041-4b42-8dc8-63e5332d6df4",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock",
       "div",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_ddc4dbae-5041-4b42-8dc8-63e5332d6df4",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock",
       "div",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R50": {
     "role": "http://www.trex.com/20250331/taxonomy/role/DisclosureStockbasedCompensationSummaryOfStockbasedCompensationExpensesParentheticalDetails",
     "longName": "995867 - Disclosure - Stock-Based Compensation - Summary of Stock-Based Compensation Expenses (Parenthetical) (Details)",
     "shortName": "Stock-Based Compensation - Summary of Stock-Based Compensation Expenses (Parenthetical) (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "parenthetical",
     "menuCat": "Details",
     "order": "50",
     "firstAnchor": {
      "contextRef": "C_f743b696-54dc-4203-bd4a-0991a2693a79",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock",
       "div",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f92fe0b1-93df-4ed6-9f4f-7be715202df2",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
      "unitRef": "U_shares",
      "xsiNil": "false",
      "lang": null,
      "decimals": "0",
      "ancestors": [
       "span",
       "div",
       "div",
       "us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock",
       "div",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "unique": true
     }
    },
    "R51": {
     "role": "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfAssumptionsUsedToEstimateFairValueOfEachSarDetail",
     "longName": "995877 - Disclosure - Stock-Based Compensation - Summary of Assumptions Used to Estimate Fair Value of Each SAR (Detail)",
     "shortName": "Stock-Based Compensation - Summary of Assumptions Used to Estimate Fair Value of Each SAR (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "51",
     "firstAnchor": {
      "contextRef": "C_f743b696-54dc-4203-bd4a-0991a2693a79",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
      "unitRef": "U_UnitedStatesOfAmericaDollarsShare",
      "xsiNil": "false",
      "lang": null,
      "decimals": "2",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
       "div",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f743b696-54dc-4203-bd4a-0991a2693a79",
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
      "unitRef": "U_UnitedStatesOfAmericaDollarsShare",
      "xsiNil": "false",
      "lang": null,
      "decimals": "2",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
       "div",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R52": {
     "role": "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationExpensesDetail",
     "longName": "995887 - Disclosure - Stock-Based Compensation - Summary of Stock-Based Compensation Expenses (Detail)",
     "shortName": "Stock-Based Compensation - Summary of Stock-Based Compensation Expenses (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "52",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R53": {
     "role": "http://www.trex.com/20250331/taxonomy/role/IncomeTaxesAdditionalInformationDetail",
     "longName": "995897 - Disclosure - Income Taxes - Additional Information (Detail)",
     "shortName": "Income Taxes - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "53",
     "firstAnchor": {
      "contextRef": "C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9",
      "name": "us-gaap:DeferredTaxAssetsValuationAllowance",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9",
      "name": "us-gaap:DeferredTaxAssetsValuationAllowance",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-5",
      "ancestors": [
       "span",
       "p",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R54": {
     "role": "http://www.trex.com/20250331/taxonomy/role/DisclosureSegmentInformationAdditionalInformationDetails",
     "longName": "995907 - Disclosure - Segment Information - Additional Information (Details)",
     "shortName": "Segment Information - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "54",
     "firstAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "trex:NumberOfSalesRetailers",
      "unitRef": "U_Retailer",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146",
      "name": "trex:NumberOfSalesRetailers",
      "unitRef": "U_Retailer",
      "xsiNil": "false",
      "lang": null,
      "decimals": "INF",
      "ancestors": [
       "span",
       "p",
       "us-gaap:SegmentReportingDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R55": {
     "role": "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail",
     "longName": "995917 - Disclosure - Commitments and Contingencies - Additional Information (Detail)",
     "shortName": "Commitments and Contingencies - Additional Information (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "55",
     "firstAnchor": {
      "contextRef": "C_339092ed-217a-4730-8c0d-5d5e4d97ef57",
      "name": "us-gaap:DebtInstrumentCarryingAmount",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-6",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_339092ed-217a-4730-8c0d-5d5e4d97ef57",
      "name": "us-gaap:DebtInstrumentCarryingAmount",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-6",
      "ancestors": [
       "span",
       "p",
       "ix:continuation",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R56": {
     "role": "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail",
     "longName": "995927 - Disclosure - Commitments and Contingencies - Summary of Reconciliation of Company's Residential Product Warranty Reserve (Detail)",
     "shortName": "Commitments and Contingencies - Summary of Reconciliation of Company's Residential Product Warranty Reserve (Detail)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "56",
     "firstAnchor": {
      "contextRef": "C_3bdbff76-38f1-4b53-ac1e-296051ee7de7",
      "name": "us-gaap:StandardProductWarrantyAccrual",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "C_3bdbff76-38f1-4b53-ac1e-296051ee7de7",
      "name": "us-gaap:StandardProductWarrantyAccrual",
      "unitRef": "U_USD",
      "xsiNil": "false",
      "lang": null,
      "decimals": "-3",
      "ancestors": [
       "span",
       "p",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "div",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "trex-20250331.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "us-gaap_AccountingChangesAndErrorCorrectionsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountingChangesAndErrorCorrectionsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Changes and Error Corrections [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountingPoliciesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountingPoliciesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Policies [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountingStandardsUpdateExtensibleList": {
     "xbrltype": "enumerationSetItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountingStandardsUpdateExtensibleList",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DisclosureRecentlyAdoptedAccountingStandardsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Standards Update [Extensible Enumeration]",
        "documentation": "Indicates amendment to accounting standards."
       }
      }
     },
     "auth_ref": [
      "r92",
      "r93",
      "r94",
      "r95",
      "r96",
      "r97",
      "r146",
      "r147",
      "r148",
      "r205",
      "r206",
      "r210",
      "r211",
      "r212",
      "r213",
      "r216",
      "r217",
      "r218",
      "r219",
      "r220",
      "r252",
      "r253",
      "r259",
      "r391",
      "r392",
      "r393",
      "r394",
      "r400",
      "r401",
      "r402",
      "r403",
      "r404",
      "r405",
      "r407",
      "r408",
      "r409",
      "r410",
      "r411",
      "r412",
      "r413",
      "r414",
      "r415",
      "r416",
      "r417",
      "r425",
      "r426",
      "r427",
      "r438",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r446",
      "r447",
      "r448",
      "r449",
      "r451",
      "r452",
      "r462",
      "r477",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r529",
      "r530",
      "r531",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540",
      "r806"
     ]
    },
    "us-gaap_AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilities"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accrued Expenses and Other Liabilities",
        "label": "Accounts Payable, Accrued Liabilities, and Other Liabilities Disclosure, Current [Text Block]",
        "documentation": "The entire disclosure for accounts payable, accrued expenses, and other liabilities that are classified as current at the end of the reporting period."
       }
      }
     },
     "auth_ref": [
      "r375"
     ]
    },
    "us-gaap_AccountsPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsPayableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts payable",
        "label": "Accounts Payable, Current",
        "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r23",
      "r677"
     ]
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccountsReceivableNetCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts receivable, net",
        "label": "Accounts Receivable, Net, 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": [
      "r816"
     ]
    },
    "trex_AccruedCapitalProjectsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "AccruedCapitalProjectsCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail": {
       "parentTag": "trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Capital Projects",
        "documentation": "Accrued capital projects current.",
        "label": "Accrued Capital Projects Current"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccruedIncomeTaxesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccruedIncomeTaxesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail": {
       "parentTag": "trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income Taxes",
        "label": "Accrued Income Taxes, Current",
        "documentation": "Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations."
       }
      }
     },
     "auth_ref": [
      "r26",
      "r68"
     ]
    },
    "trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail",
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total accrued expenses and other liabilities",
        "terseLabel": "Accrued expenses and other liabilities",
        "label": "Accrued Liabilities And Other Liabilities Current Excluding Warranty",
        "documentation": "Accrued liabilities and other liabilities current excluding warranty."
       }
      }
     },
     "auth_ref": []
    },
    "trex_AccruedManufacturingExpensesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "AccruedManufacturingExpensesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail": {
       "parentTag": "trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Manufacturing costs",
        "label": "Accrued Manufacturing Expenses Current",
        "documentation": "Accrued expenses related to manufacturing facilities primarily consisting of accrued utilities, equipment rentals and temporary labor expenses."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccruedMarketingCostsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AccruedMarketingCostsCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail": {
       "parentTag": "trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Sales and marketing",
        "label": "Accrued Marketing Costs, Current",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for the marketing, trade and selling of the entity's goods and services. Marketing costs would include expenditures for planning and executing the conception, pricing, promotion, and distribution of ideas, goods, and services; costs of public relations and corporate promotions; and obligations incurred and payable for sales discounts, rebates, price protection programs, etc. offered to customers and under government programs. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_Additional402vDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "Additional402vDisclosureTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Additional 402(v) Disclosure [Text Block]",
        "terseLabel": "Additional 402(v) Disclosure"
       }
      }
     },
     "auth_ref": [
      "r730"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdditionalPaidInCapitalCommonStock",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Additional paid-in capital",
        "label": "Additional Paid in Capital, Common Stock",
        "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital."
       }
      }
     },
     "auth_ref": [
      "r36"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdditionalPaidInCapitalMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Additional Paid-In Capital [Member]",
        "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": [
      "r553",
      "r803",
      "r804",
      "r805",
      "r807",
      "r880",
      "r927"
     ]
    },
    "ecd_AdjToCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AdjToCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment to Compensation Amount",
        "terseLabel": "Adjustment to Compensation, Amount"
       }
      }
     },
     "auth_ref": [
      "r743"
     ]
    },
    "ecd_AdjToCompAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AdjToCompAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment to Compensation [Axis]",
        "terseLabel": "Adjustment to Compensation:"
       }
      }
     },
     "auth_ref": [
      "r743"
     ]
    },
    "ecd_AdjToNonPeoNeoCompFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AdjToNonPeoNeoCompFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment to Non-PEO NEO Compensation Footnote [Text Block]",
        "terseLabel": "Adjustment to Non-PEO NEO Compensation Footnote"
       }
      }
     },
     "auth_ref": [
      "r743"
     ]
    },
    "ecd_AdjToPeoCompFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AdjToPeoCompFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustment To PEO Compensation, Footnote [Text Block]",
        "terseLabel": "Adjustment To PEO Compensation, Footnote"
       }
      }
     },
     "auth_ref": [
      "r743"
     ]
    },
    "us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Adjustments to reconcile net income to net cash used in operating activities:",
        "label": "Adjustments, Noncash Items, to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation",
     "crdr": "debit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Shares withheld for taxes on awards",
        "label": "Adjustments Related to Tax Withholding for Share-based Compensation",
        "documentation": "Amount of decrease to equity for grantee's tax withholding obligation for award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AggtChngPnsnValInSummryCompstnTblForAplblYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AggtChngPnsnValInSummryCompstnTblForAplblYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table [Member]",
        "terseLabel": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table"
       }
      }
     },
     "auth_ref": [
      "r776"
     ]
    },
    "ecd_AggtErrCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AggtErrCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Erroneous Compensation Amount",
        "terseLabel": "Aggregate Erroneous Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r702",
      "r712",
      "r722",
      "r754"
     ]
    },
    "ecd_AggtErrCompNotYetDeterminedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AggtErrCompNotYetDeterminedTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Erroneous Compensation Not Yet Determined [Text Block]",
        "terseLabel": "Aggregate Erroneous Compensation Not Yet Determined"
       }
      }
     },
     "auth_ref": [
      "r705",
      "r715",
      "r725",
      "r757"
     ]
    },
    "ecd_AggtPnsnAdjsSvcCstMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AggtPnsnAdjsSvcCstMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Pension Adjustments Service Cost [Member]",
        "terseLabel": "Aggregate Pension Adjustments Service Cost"
       }
      }
     },
     "auth_ref": [
      "r777"
     ]
    },
    "trex_AgreementAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "AgreementAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Agreement [Axis]",
        "label": "Agreement [Axis]",
        "documentation": "Agreement."
       }
      }
     },
     "auth_ref": []
    },
    "trex_AgreementDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "AgreementDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Agreement [Domain]",
        "label": "Agreement [Domain]",
        "documentation": "Agreement domain."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AllAdjToCompMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AllAdjToCompMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Adjustments to Compensation [Member]",
        "terseLabel": "All Adjustments to Compensation"
       }
      }
     },
     "auth_ref": [
      "r743"
     ]
    },
    "ecd_AllExecutiveCategoriesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AllExecutiveCategoriesMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Executive Categories [Member]",
        "terseLabel": "All Executive Categories"
       }
      }
     },
     "auth_ref": [
      "r750"
     ]
    },
    "ecd_AllIndividualsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AllIndividualsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure",
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure",
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements",
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Individuals [Member]",
        "terseLabel": "All Individuals"
       }
      }
     },
     "auth_ref": [
      "r706",
      "r716",
      "r726",
      "r750",
      "r758",
      "r762",
      "r770"
     ]
    },
    "ecd_AllTradingArrangementsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AllTradingArrangementsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Trading Arrangements [Member]",
        "terseLabel": "All Trading Arrangements"
       }
      }
     },
     "auth_ref": [
      "r768"
     ]
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AllocatedShareBasedCompensationExpense",
     "crdr": "debit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationExpensesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based compensation expense",
        "label": "Allocated Share-based Compensation Expense",
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized."
       }
      }
     },
     "auth_ref": [
      "r369",
      "r373"
     ]
    },
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amendment Flag",
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AmortizationOfIntangibleAssets",
     "crdr": "debit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Amortization of intangible asset",
        "label": "Amortization of Intangible Assets",
        "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method."
       }
      }
     },
     "auth_ref": [
      "r3",
      "r241",
      "r248",
      "r656"
     ]
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Anti-dilutive securities excluded from the computation of diluted earnings per share",
        "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount",
        "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented."
       }
      }
     },
     "auth_ref": [
      "r174"
     ]
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Antidilutive Securities [Axis]",
        "label": "Antidilutive Securities [Axis]",
        "documentation": "Information by type of antidilutive security."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]",
        "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share [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_AntidilutiveSecuritiesNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AntidilutiveSecuritiesNameDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Antidilutive Securities, Name [Domain]",
        "label": "Antidilutive Securities, Name [Domain]",
        "documentation": "Incremental common shares attributable to securities that were not included in diluted earnings per share (EPS) because to do so would increase EPS amounts or decrease loss per share amounts for the period presented."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "us-gaap_AreaOfLand": {
     "xbrltype": "areaItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AreaOfLand",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Area of Land",
        "documentation": "Area of land held."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_Assets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "Assets",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total assets",
        "label": "Assets",
        "documentation": "Amount of asset recognized for present right to economic benefit."
       }
      }
     },
     "auth_ref": [
      "r66",
      "r77",
      "r105",
      "r132",
      "r176",
      "r185",
      "r195",
      "r198",
      "r208",
      "r273",
      "r274",
      "r275",
      "r276",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r419",
      "r423",
      "r453",
      "r504",
      "r587",
      "r646",
      "r647",
      "r677",
      "r693",
      "r845",
      "r846",
      "r888"
     ]
    },
    "us-gaap_AssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsAbstract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "ASSETS",
        "label": "Assets [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsAndLiabilitiesLesseeAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsAndLiabilitiesLesseeAbstract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Operating lease liabilities:",
        "label": "Assets and Liabilities, Lessee [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total current assets",
        "label": "Assets, Current",
        "documentation": "Amount of asset recognized for present right to economic benefit, classified as current."
       }
      }
     },
     "auth_ref": [
      "r99",
      "r113",
      "r132",
      "r208",
      "r273",
      "r274",
      "r275",
      "r276",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r419",
      "r423",
      "r453",
      "r677",
      "r845",
      "r846",
      "r888"
     ]
    },
    "us-gaap_AssetsCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AssetsCurrentAbstract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current assets",
        "label": "Assets, Current [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AwardExrcPrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardExrcPrice",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Exercise Price",
        "terseLabel": "Exercise Price"
       }
      }
     },
     "auth_ref": [
      "r765"
     ]
    },
    "ecd_AwardGrantDateFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardGrantDateFairValue",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Grant Date Fair Value",
        "terseLabel": "Fair Value as of Grant Date"
       }
      }
     },
     "auth_ref": [
      "r766"
     ]
    },
    "ecd_AwardTmgDiscLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardTmgDiscLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing Disclosures [Line Items]",
        "terseLabel": "Award Timing Disclosures"
       }
      }
     },
     "auth_ref": [
      "r761"
     ]
    },
    "ecd_AwardTmgHowMnpiCnsdrdTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardTmgHowMnpiCnsdrdTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing, How MNPI Considered [Text Block]",
        "terseLabel": "Award Timing, How MNPI Considered"
       }
      }
     },
     "auth_ref": [
      "r761"
     ]
    },
    "ecd_AwardTmgMethodTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardTmgMethodTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing Method [Text Block]",
        "terseLabel": "Award Timing Method"
       }
      }
     },
     "auth_ref": [
      "r761"
     ]
    },
    "ecd_AwardTmgMnpiCnsdrdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardTmgMnpiCnsdrdFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing MNPI Considered [Flag]",
        "terseLabel": "Award Timing MNPI Considered"
       }
      }
     },
     "auth_ref": [
      "r761"
     ]
    },
    "ecd_AwardTmgMnpiDiscTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardTmgMnpiDiscTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing MNPI Disclosure [Text Block]",
        "terseLabel": "Award Timing MNPI Disclosure"
       }
      }
     },
     "auth_ref": [
      "r761"
     ]
    },
    "ecd_AwardTmgPredtrmndFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardTmgPredtrmndFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing Predetermined [Flag]",
        "terseLabel": "Award Timing Predetermined"
       }
      }
     },
     "auth_ref": [
      "r761"
     ]
    },
    "us-gaap_AwardTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "AwardTypeAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DisclosureStockbasedCompensationSummaryOfStockbasedCompensationExpensesParentheticalDetails",
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfAssumptionsUsedToEstimateFairValueOfEachSarDetail",
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationExpensesDetail",
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationGrantsDetail",
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail",
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Type [Axis]",
        "terseLabel": "Award Type",
        "verboseLabel": "Award Type [Axis]",
        "documentation": "Information by type of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r361",
      "r362",
      "r364",
      "r365",
      "r366",
      "r367",
      "r368"
     ]
    },
    "ecd_AwardUndrlygSecuritiesAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardUndrlygSecuritiesAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Underlying Securities Amount",
        "terseLabel": "Underlying Securities"
       }
      }
     },
     "auth_ref": [
      "r764"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardsCloseToMnpiDiscIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Awards Close in Time to MNPI Disclosures, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r763"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardsCloseToMnpiDiscTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Awards Close in Time to MNPI Disclosures [Table]",
        "terseLabel": "Awards Close in Time to MNPI Disclosures"
       }
      }
     },
     "auth_ref": [
      "r762"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "AwardsCloseToMnpiDiscTableTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Awards Close in Time to MNPI Disclosures [Table Text Block]",
        "terseLabel": "Awards Close in Time to MNPI Disclosures, Table"
       }
      }
     },
     "auth_ref": [
      "r762"
     ]
    },
    "us-gaap_BaseRateMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "BaseRateMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Base Rate [Member]",
        "label": "Base Rate [Member]",
        "documentation": "Minimum rate investor will accept."
       }
      }
     },
     "auth_ref": []
    },
    "trex_CapitalExpendituresInAccountsPayableAndAccruedExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "CapitalExpendituresInAccountsPayableAndAccruedExpenses",
     "crdr": "credit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Capital expenditures in accounts payable and accrued expenses.",
        "label": "Capital Expenditures In Accounts Payable and Accrued Expenses",
        "terseLabel": "Capital expenditures in accounts payable and accrued expenses"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash and cash equivalents",
        "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": [
      "r11",
      "r101",
      "r634"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "crdr": "debit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Cash and cash equivalents, beginning of period",
        "periodEndLabel": "Cash and cash equivalents, end of period",
        "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": [
      "r11",
      "r55",
      "r129"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect",
        "totalLabel": "Net decrease in cash and cash equivalents",
        "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": [
      "r0",
      "r55"
     ]
    },
    "us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Supplemental non-cash investing and financing disclosure:",
        "label": "Cash Flow, Noncash Investing and Financing Activities Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CashFlowOperatingActivitiesLesseeAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CashFlowOperatingActivitiesLesseeAbstract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Supplemental cash flow information",
        "label": "Cash Flow, Operating Activities, Lessee [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DisclosureRecentlyAdoptedAccountingStandardsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Change in Accounting Principle, Accounting Standards Update, Adopted [true false]",
        "documentation": "Indicates (true false) whether accounting standards update was adopted."
       }
      }
     },
     "auth_ref": [
      "r81",
      "r82",
      "r97",
      "r144",
      "r205",
      "r209",
      "r210",
      "r211",
      "r218",
      "r219",
      "r252",
      "r259",
      "r392",
      "r400",
      "r401",
      "r410",
      "r411",
      "r413",
      "r425",
      "r426",
      "r438",
      "r439",
      "r451",
      "r452",
      "r462",
      "r477",
      "r479",
      "r491",
      "r492",
      "r529",
      "r530"
     ]
    },
    "us-gaap_ChangeInAccountingPrincipleAccountingStandardsUpdateImmaterialEffect": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ChangeInAccountingPrincipleAccountingStandardsUpdateImmaterialEffect",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DisclosureRecentlyAdoptedAccountingStandardsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Change in Accounting Principle, Accounting Standards Update, Immaterial Effect [true false]",
        "documentation": "Indicates (true false) whether effect from applying amendment to accounting standards is immaterial."
       }
      }
     },
     "auth_ref": [
      "r146",
      "r160",
      "r214"
     ]
    },
    "ecd_ChangedPeerGroupFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ChangedPeerGroupFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Changed Peer Group, Footnote [Text Block]",
        "terseLabel": "Changed Peer Group, Footnote"
       }
      }
     },
     "auth_ref": [
      "r741"
     ]
    },
    "ecd_ChngInFrValAsOfVstngDtOfPrrYrEqtyAwrdsVstdInCvrdYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ChngInFrValAsOfVstngDtOfPrrYrEqtyAwrdsVstdInCvrdYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year [Member]",
        "terseLabel": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year"
       }
      }
     },
     "auth_ref": [
      "r738"
     ]
    },
    "ecd_ChngInFrValOfOutsdngAndUnvstdEqtyAwrdsGrntdInPrrYrsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ChngInFrValOfOutsdngAndUnvstdEqtyAwrdsGrntdInPrrYrsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested [Member]",
        "terseLabel": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested"
       }
      }
     },
     "auth_ref": [
      "r736"
     ]
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "CityAreaCode",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ClassOfStockDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ClassOfStockDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail",
      "http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Class of Stock [Domain]",
        "documentation": "Share of stock differentiated by the voting rights the holder receives. Examples include, but are not limited to, common stock, redeemable preferred stock, nonredeemable preferred stock, and convertible stock."
       }
      }
     },
     "auth_ref": [
      "r87",
      "r107",
      "r108",
      "r109",
      "r132",
      "r165",
      "r169",
      "r171",
      "r173",
      "r178",
      "r179",
      "r208",
      "r273",
      "r275",
      "r276",
      "r277",
      "r280",
      "r281",
      "r310",
      "r311",
      "r313",
      "r316",
      "r322",
      "r453",
      "r546",
      "r547",
      "r548",
      "r549",
      "r553",
      "r554",
      "r555",
      "r556",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r575",
      "r596",
      "r613",
      "r623",
      "r624",
      "r625",
      "r626",
      "r627",
      "r780",
      "r799",
      "r808"
     ]
    },
    "us-gaap_ClassOfTreasuryStockTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ClassOfTreasuryStockTable",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Class of Treasury Stock [Table]",
        "label": "Class of Treasury Stock [Table]",
        "documentation": "Disclosure of information about treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock."
       }
      }
     },
     "auth_ref": [
      "r15",
      "r16",
      "r17",
      "r18"
     ]
    },
    "ecd_CoSelectedMeasureAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "CoSelectedMeasureAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Company Selected Measure Amount",
        "terseLabel": "Company Selected Measure Amount"
       }
      }
     },
     "auth_ref": [
      "r742"
     ]
    },
    "ecd_CoSelectedMeasureName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "CoSelectedMeasureName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Company Selected Measure Name",
        "terseLabel": "Company Selected Measure Name"
       }
      }
     },
     "auth_ref": [
      "r742"
     ]
    },
    "trex_CommercialUseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "CommercialUseMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Commercial Use [Member]",
        "label": "Commercial Use [Member]",
        "documentation": "Commercial use."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingencies": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommitmentsAndContingencies",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Commitments and contingencies",
        "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": [
      "r32",
      "r70",
      "r506",
      "r574"
     ]
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/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": [
      "r59",
      "r260",
      "r261",
      "r629",
      "r831",
      "r836"
     ]
    },
    "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockCapitalSharesReservedForFutureIssuance",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of common stock available for future issuance",
        "label": "Common Stock, Capital Shares Reserved for Future Issuance",
        "documentation": "Aggregate number of common shares reserved for future issuance."
       }
      }
     },
     "auth_ref": [
      "r35"
     ]
    },
    "us-gaap_CommonStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common Stock [Member]",
        "label": "Common Stock [Member]",
        "documentation": "Stock that is subordinate to all other stock of the issuer."
       }
      }
     },
     "auth_ref": [
      "r683",
      "r684",
      "r685",
      "r687",
      "r688",
      "r689",
      "r690",
      "r803",
      "r804",
      "r807",
      "r880",
      "r926",
      "r927"
     ]
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockParOrStatedValuePerShare",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common stock, par value",
        "label": "Common Stock, Par or Stated Value Per Share",
        "documentation": "Face amount or stated value per share of common stock."
       }
      }
     },
     "auth_ref": [
      "r35"
     ]
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockSharesAuthorized",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common stock, shares authorized",
        "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": [
      "r35",
      "r575"
     ]
    },
    "us-gaap_CommonStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockSharesIssued",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common stock, shares issued",
        "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": [
      "r35"
     ]
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockSharesOutstanding",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common stock, shares outstanding",
        "label": "Common Stock, Shares, Outstanding",
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r35",
      "r575",
      "r593",
      "r927",
      "r928"
     ]
    },
    "us-gaap_CommonStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CommonStockValue",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Value, Issued",
        "terseLabel": "Common stock, $0.01 par value, 360,000,000 shares authorized; 141,170,958 and 141,098,251 shares issued and 107,227,012 and 107,154,305 shares outstanding, at March 31, 2025 and December 31, 2024, respectively",
        "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": [
      "r35",
      "r508",
      "r677"
     ]
    },
    "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "CompActuallyPaidVsCoSelectedMeasureTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Company Selected Measure [Text Block]",
        "terseLabel": "Compensation Actually Paid vs. Company Selected Measure"
       }
      }
     },
     "auth_ref": [
      "r747"
     ]
    },
    "ecd_CompActuallyPaidVsNetIncomeTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "CompActuallyPaidVsNetIncomeTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Net Income [Text Block]",
        "terseLabel": "Compensation Actually Paid vs. Net Income"
       }
      }
     },
     "auth_ref": [
      "r746"
     ]
    },
    "ecd_CompActuallyPaidVsOtherMeasureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "CompActuallyPaidVsOtherMeasureTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Other Measure [Text Block]",
        "terseLabel": "Compensation Actually Paid vs. Other Measure"
       }
      }
     },
     "auth_ref": [
      "r748"
     ]
    },
    "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "CompActuallyPaidVsTotalShareholderRtnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Compensation Actually Paid vs. Total Shareholder Return [Text Block]",
        "terseLabel": "Compensation Actually Paid vs. Total Shareholder Return"
       }
      }
     },
     "auth_ref": [
      "r745"
     ]
    },
    "trex_ComponentsOfBasicAndDilutedEarningPerShareLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "ComponentsOfBasicAndDilutedEarningPerShareLineItems",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Components Of Basic And Diluted Earning Per Share [Line Items]",
        "label": "Components Of Basic And Diluted Earning Per Share [Line Items]",
        "documentation": "Components Of Basic And Diluted Earning Per Share [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "trex_ComponentsOfBasicAndDilutedEarningPerShareTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "ComponentsOfBasicAndDilutedEarningPerShareTable",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Components Of Basic And Diluted Earning Per Share [Table]",
        "label": "Components Of Basic And Diluted Earning Per Share [Table]",
        "documentation": "Components Of Basic And Diluted Earning Per Share [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ComprehensiveIncomeNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Comprehensive income",
        "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": [
      "r9",
      "r115",
      "r117",
      "r121",
      "r500",
      "r516",
      "r517"
     ]
    },
    "us-gaap_ContingentConsiderationByTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContingentConsiderationByTypeAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contingent Consideration by Type [Axis]",
        "label": "Contingent Consideration by Type [Axis]",
        "documentation": "Information by type of contingent consideration."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ContingentConsiderationTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ContingentConsiderationTypeDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contingent Consideration Type [Domain]",
        "label": "Contingent Consideration Type [Domain]",
        "documentation": "Description of contingent payment arrangement."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CostOfGoodsAndServicesSold",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cost of sales",
        "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": [
      "r46",
      "r47",
      "r489"
     ]
    },
    "dei_CoverAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "CoverAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Cover [Abstract]",
        "documentation": "Cover page."
       }
      }
     },
     "auth_ref": []
    },
    "trex_CreditAgreementSecondAmendmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "CreditAgreementSecondAmendmentMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Credit Agreement Second Amendment [Member]",
        "documentation": "Credit agreement second amendment.",
        "terseLabel": "Credit Agreement Second Amendment [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CreditFacilityAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CreditFacilityAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "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": [
      "r272",
      "r843"
     ]
    },
    "us-gaap_CreditFacilityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "CreditFacilityDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "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": [
      "r272",
      "r843",
      "r844"
     ]
    },
    "trex_CreditFacilityOneAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "CreditFacilityOneAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Credit Facility One [Axis]",
        "label": "Credit Facility One [Axis]",
        "documentation": "Credit facility one axis."
       }
      }
     },
     "auth_ref": []
    },
    "trex_CreditFacilityOneDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "CreditFacilityOneDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Credit Facility One [Domain]",
        "label": "Credit Facility One [Domain]",
        "documentation": "Credit facility one domain."
       }
      }
     },
     "auth_ref": []
    },
    "dei_CurrentFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "CurrentFiscalYearEndDate",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current Fiscal Year End Date",
        "documentation": "End date of current fiscal year in the format --MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtDisclosureTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/Debt"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Debt",
        "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": [
      "r60",
      "r130",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r271",
      "r272",
      "r282",
      "r288",
      "r289",
      "r290",
      "r291",
      "r292",
      "r293",
      "r298",
      "r305",
      "r306",
      "r307",
      "r460"
     ]
    },
    "us-gaap_DebtInstrumentAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "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": [
      "r7",
      "r25",
      "r26",
      "r67",
      "r69",
      "r134",
      "r283",
      "r284",
      "r285",
      "r286",
      "r287",
      "r289",
      "r294",
      "r295",
      "r296",
      "r297",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r657",
      "r658",
      "r659",
      "r660",
      "r661",
      "r675",
      "r800",
      "r832",
      "r833",
      "r834",
      "r884",
      "r885"
     ]
    },
    "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentBasisSpreadOnVariableRate1",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Interest 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": []
    },
    "us-gaap_DebtInstrumentCarryingAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentCarryingAmount",
     "crdr": "credit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Long-Term Debt, Gross",
        "terseLabel": "Bonds issue",
        "documentation": "Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r69",
      "r308"
     ]
    },
    "us-gaap_DebtInstrumentDescriptionOfVariableRateBasis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentDescriptionOfVariableRateBasis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Instrument, Description of Variable Rate Basis",
        "terseLabel": "Debt instrument, description of variable rate basis",
        "documentation": "Description of reference rate used for variable rate of debt instrument."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtInstrumentInterestRateStatedPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentInterestRateStatedPercentage",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Debt instrument, Interest rate, Stated percentage",
        "label": "Debt Instrument, Interest Rate, Stated Percentage",
        "documentation": "Contractual interest rate for funds borrowed, under the debt agreement."
       }
      }
     },
     "auth_ref": [
      "r28",
      "r284"
     ]
    },
    "us-gaap_DebtInstrumentMaturityDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentMaturityDate",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Matutiry date of credit agreement",
        "label": "Debt Instrument, Maturity Date",
        "documentation": "Date when the debt instrument is scheduled to be fully repaid, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": [
      "r106",
      "r657",
      "r881",
      "r882"
     ]
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtInstrumentNameDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "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": [
      "r7",
      "r134",
      "r283",
      "r284",
      "r285",
      "r286",
      "r287",
      "r289",
      "r294",
      "r295",
      "r296",
      "r297",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r657",
      "r658",
      "r659",
      "r660",
      "r661",
      "r675",
      "r800",
      "r832",
      "r833",
      "r834",
      "r884",
      "r885"
     ]
    },
    "us-gaap_DebtWeightedAverageInterestRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DebtWeightedAverageInterestRate",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Debt, Weighted Average Interest Rate",
        "label": "Debt, Weighted Average Interest Rate",
        "documentation": "Weighted average interest rate of debt outstanding."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred Income Taxes",
        "label": "Deferred Income Tax Expense (Benefit)",
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r3",
      "r80",
      "r802"
     ]
    },
    "us-gaap_DeferredIncomeTaxLiabilitiesNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredIncomeTaxLiabilitiesNet",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "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": [
      "r377",
      "r378",
      "r505"
     ]
    },
    "us-gaap_DeferredTaxAssetsValuationAllowance": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DeferredTaxAssetsValuationAllowance",
     "crdr": "credit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Valuation allowance",
        "label": "Deferred Tax Assets, Valuation Allowance",
        "documentation": "Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized."
       }
      }
     },
     "auth_ref": [
      "r386"
     ]
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DepreciationDepletionAndAmortization",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Depreciation and amortization",
        "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": [
      "r3",
      "r176",
      "r188",
      "r198",
      "r646",
      "r647"
     ]
    },
    "trex_DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/NewAccountingStandardsNotYetAdopted"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "New Accounting Standards Not Yet Adopted",
        "label": "Description Of New Accounting Standards Not Yet Adopted [Text Block]",
        "documentation": "Description of new accounting standards not yet adopted."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-Based Compensation",
        "label": "Disclosure of Compensation Related Costs, Share-based Payments [Text Block]",
        "documentation": "The entire disclosure for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r337",
      "r341",
      "r370",
      "r371",
      "r372",
      "r665"
     ]
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Disclosure of Compensation Related Costs, Share-based Payments [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentFiscalPeriodFocus": {
     "xbrltype": "fiscalPeriodItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentFiscalPeriodFocus",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Fiscal Period Focus",
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentFiscalYearFocus": {
     "xbrltype": "gYearItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentFiscalYearFocus",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Fiscal Year Focus",
        "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentPeriodEndDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentPeriodEndDate",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Period End Date",
        "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentQuarterlyReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentQuarterlyReport",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Quarterly Report",
        "documentation": "Boolean flag that is true only for a form used as an quarterly report."
       }
      }
     },
     "auth_ref": [
      "r697"
     ]
    },
    "dei_DocumentTransitionReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentTransitionReport",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Transition Report",
        "documentation": "Boolean flag that is true only for a form used as a transition report."
       }
      }
     },
     "auth_ref": [
      "r729"
     ]
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "DocumentType",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Type",
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_DvddsOrOthrErngsPdOnEqtyAwrdsNtOthrwsRflctdInTtlCompForCvrdYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "DvddsOrOthrErngsPdOnEqtyAwrdsNtOthrwsRflctdInTtlCompForCvrdYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year [Member]",
        "terseLabel": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year"
       }
      }
     },
     "auth_ref": [
      "r740"
     ]
    },
    "us-gaap_EarningsPerShareBasic": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareBasic",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome",
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Basic earnings per share",
        "terseLabel": "Basic earnings per common 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": [
      "r122",
      "r151",
      "r152",
      "r153",
      "r154",
      "r155",
      "r156",
      "r163",
      "r165",
      "r171",
      "r172",
      "r173",
      "r175",
      "r408",
      "r417",
      "r448",
      "r449",
      "r501",
      "r518",
      "r638"
     ]
    },
    "us-gaap_EarningsPerShareDiluted": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EarningsPerShareDiluted",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome",
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Diluted earnings per share",
        "terseLabel": "Diluted earnings per common 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": [
      "r122",
      "r151",
      "r152",
      "r153",
      "r154",
      "r155",
      "r156",
      "r165",
      "r171",
      "r172",
      "r173",
      "r175",
      "r408",
      "r417",
      "r448",
      "r449",
      "r501",
      "r518",
      "r638"
     ]
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Effective tax rate",
        "label": "Effective Income Tax Rate Reconciliation, Percent",
        "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations."
       }
      }
     },
     "auth_ref": [
      "r380",
      "r667"
     ]
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeRelatedLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail": {
       "parentTag": "trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Compensation and benefits",
        "label": "Employee-related Liabilities, Current",
        "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r26"
     ]
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions",
     "crdr": "debit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unrecognized compensation cost related to unvested awards",
        "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Share-based Awards Other than Options",
        "documentation": "Amount of cost to be recognized for nonvested award under share-based payment arrangement. Excludes share and unit options."
       }
      }
     },
     "auth_ref": [
      "r876"
     ]
    },
    "us-gaap_EmployeeStockOptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EmployeeStockOptionMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Employee Stock Option [Member]",
        "terseLabel": "Employee Stock Option",
        "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time."
       }
      }
     },
     "auth_ref": []
    },
    "trex_EmployeeStockPurchasePlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "EmployeeStockPurchasePlanMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationExpensesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Employee Stock Purchase Plan [Member]",
        "label": "Employee Stock Purchase Plan [Member]",
        "documentation": "Employee stock purchase plan."
       }
      }
     },
     "auth_ref": []
    },
    "trex_EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Enhance Decking And Transcend, Select, Enhance And Signature Railing [Member]",
        "documentation": "Enhance decking and transcend, select, enhance and signature railing."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressAddressLine1": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressAddressLine1",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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/2024",
     "localname": "EntityAddressCityOrTown",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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/2024",
     "localname": "EntityAddressPostalZipCode",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Postal Zip Code",
        "documentation": "Code for the postal or zip code"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressStateOrProvince": {
     "xbrltype": "stateOrProvinceItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityAddressStateOrProvince",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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/2024",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Central Index Key",
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK."
       }
      }
     },
     "auth_ref": [
      "r695"
     ]
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityCommonStockSharesOutstanding",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Common Stock, Shares Outstanding",
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCurrentReportingStatus": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityCurrentReportingStatus",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Current Reporting Status",
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityEmergingGrowthCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityEmergingGrowthCompany",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Emerging Growth Company",
        "documentation": "Indicate if registrant meets the emerging growth company criteria."
       }
      }
     },
     "auth_ref": [
      "r695"
     ]
    },
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityFileNumber",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity File Number",
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityFilerCategory": {
     "xbrltype": "filerCategoryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityFilerCategory",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Filer Category",
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure."
       }
      }
     },
     "auth_ref": [
      "r695"
     ]
    },
    "dei_EntityIncorporationStateCountryCode": {
     "xbrltype": "edgarStateCountryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityIncorporationStateCountryCode",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Incorporation, State or Country Code",
        "documentation": "Two-character EDGAR code representing the state or country of incorporation."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityInteractiveDataCurrent": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityInteractiveDataCurrent",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Interactive Data Current",
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)."
       }
      }
     },
     "auth_ref": [
      "r779"
     ]
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Registrant Name",
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC."
       }
      }
     },
     "auth_ref": [
      "r695"
     ]
    },
    "dei_EntityShellCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityShellCompany",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Shell Company",
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r695"
     ]
    },
    "dei_EntitySmallBusiness": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntitySmallBusiness",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Small Business",
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)."
       }
      }
     },
     "auth_ref": [
      "r695"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Tax Identification Number",
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS."
       }
      }
     },
     "auth_ref": [
      "r695"
     ]
    },
    "ecd_EqtyAwrdsAdjFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "EqtyAwrdsAdjFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Awards Adjustments, Footnote [Text Block]",
        "terseLabel": "Equity Awards Adjustments, Footnote"
       }
      }
     },
     "auth_ref": [
      "r734"
     ]
    },
    "ecd_EqtyAwrdsAdjsExclgValRprtdInSummryCompstnTblMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "EqtyAwrdsAdjsExclgValRprtdInSummryCompstnTblMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Awards Adjustments, Excluding Value Reported in the Compensation Table [Member]",
        "terseLabel": "Equity Awards Adjustments, Excluding Value Reported in Compensation Table"
       }
      }
     },
     "auth_ref": [
      "r775"
     ]
    },
    "ecd_EqtyAwrdsAdjsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "EqtyAwrdsAdjsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Awards Adjustments [Member]",
        "terseLabel": "Equity Awards Adjustments"
       }
      }
     },
     "auth_ref": [
      "r775"
     ]
    },
    "ecd_EqtyAwrdsInSummryCompstnTblForAplblYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "EqtyAwrdsInSummryCompstnTblForAplblYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table [Member]",
        "terseLabel": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table"
       }
      }
     },
     "auth_ref": [
      "r775"
     ]
    },
    "us-gaap_EquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EquityClassOfTreasuryStockLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EquityClassOfTreasuryStockLineItems",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity, Class of Treasury Stock [Line Items]",
        "label": "Equity, Class of Treasury Stock [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_EquityComponentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "EquityComponentDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity",
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "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": [
      "r5",
      "r94",
      "r118",
      "r119",
      "r120",
      "r140",
      "r141",
      "r142",
      "r147",
      "r155",
      "r157",
      "r159",
      "r177",
      "r213",
      "r221",
      "r253",
      "r323",
      "r390",
      "r391",
      "r403",
      "r404",
      "r405",
      "r409",
      "r416",
      "r417",
      "r428",
      "r430",
      "r431",
      "r432",
      "r433",
      "r436",
      "r447",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r462",
      "r465",
      "r483",
      "r515",
      "r531",
      "r532",
      "r533",
      "r553",
      "r613"
     ]
    },
    "ecd_EquityValuationAssumptionDifferenceFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "EquityValuationAssumptionDifferenceFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Equity Valuation Assumption Difference, Footnote [Text Block]",
        "terseLabel": "Equity Valuation Assumption Difference, Footnote"
       }
      }
     },
     "auth_ref": [
      "r744"
     ]
    },
    "ecd_ErrCompAnalysisTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ErrCompAnalysisTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Erroneous Compensation Analysis [Text Block]",
        "terseLabel": "Erroneous Compensation Analysis"
       }
      }
     },
     "auth_ref": [
      "r702",
      "r712",
      "r722",
      "r754"
     ]
    },
    "ecd_ErrCompRecoveryTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ErrCompRecoveryTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Erroneously Awarded Compensation Recovery [Table]",
        "terseLabel": "Erroneously Awarded Compensation Recovery"
       }
      }
     },
     "auth_ref": [
      "r699",
      "r709",
      "r719",
      "r751"
     ]
    },
    "trex_ExcessTaxBenefitsFromStockBasedAwards": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "ExcessTaxBenefitsFromStockBasedAwards",
     "crdr": "credit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Excess tax benefits from stock based awards",
        "label": "Excess Tax Benefits From Stock Based Awards",
        "documentation": "Excess Tax Benefits From Stock Based Awards."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_ExecutiveCategoryAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ExecutiveCategoryAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Executive Category [Axis]",
        "terseLabel": "Executive Category:"
       }
      }
     },
     "auth_ref": [
      "r750"
     ]
    },
    "trex_FifthAmendmentAndRestatedAgreementMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "FifthAmendmentAndRestatedAgreementMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fifth Amendment And Restated Agreement [Member]",
        "label": "Fifth Amendment And Restated Agreement [Member]",
        "documentation": "Fifth amendment and restated agreement member."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinancialInstrumentsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinancialInstrumentsDisclosureTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/FinancialInstruments"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Financial Instruments",
        "label": "Financial Instruments Disclosure [Text Block]",
        "documentation": "The entire disclosure for financial instruments. This disclosure includes, but is not limited to, fair value measurements of short and long term marketable securities, international currencies forward contracts, and auction rate securities. Financial instruments may include hedging and non-hedging currency exchange instruments, derivatives, securitizations and securities available for sale at fair value. Also included are investment results, realized and unrealized gains and losses as well as impairments and risk management disclosures."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinancingReceivablePortfolioSegmentAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinancingReceivablePortfolioSegmentAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Financing Receivable Portfolio Segment [Axis]",
        "label": "Financing Receivable Portfolio Segment [Axis]",
        "documentation": "Information by the level at which an entity develops and documents a systematic methodology to determine its allowance for credit losses."
       }
      }
     },
     "auth_ref": [
      "r88",
      "r89",
      "r90",
      "r91",
      "r222",
      "r223",
      "r654",
      "r781",
      "r782",
      "r783",
      "r784",
      "r785",
      "r786",
      "r787",
      "r788",
      "r789",
      "r790"
     ]
    },
    "us-gaap_FinancingReceivablePortfolioSegmentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FinancingReceivablePortfolioSegmentDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Financing Receivable Portfolio Segment [Domain]",
        "label": "Financing Receivable Portfolio Segment [Domain]",
        "documentation": "Level at which an entity develops and documents a systematic methodology to determine its allowance for credit losses."
       }
      }
     },
     "auth_ref": [
      "r88",
      "r89",
      "r90",
      "r91",
      "r781",
      "r782",
      "r783",
      "r784",
      "r785",
      "r786",
      "r787",
      "r788",
      "r789",
      "r790"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetUsefulLife": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetUsefulLife",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Amortization period",
        "label": "Finite-Lived Intangible Asset, Useful Life",
        "documentation": "Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "crdr": "credit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "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": [
      "r103",
      "r227",
      "r247",
      "r656"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Finite-Lived Intangible Assets by Major Class [Axis]",
        "label": "Finite-Lived Intangible Assets by Major Class [Axis]",
        "documentation": "Information by major type or class of finite-lived intangible assets."
       }
      }
     },
     "auth_ref": [
      "r240",
      "r242",
      "r243",
      "r244",
      "r246",
      "r247",
      "r250",
      "r251",
      "r490",
      "r497",
      "r632"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Finite-Lived Intangible Assets, Major Class Name [Domain]",
        "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]",
        "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company."
       }
      }
     },
     "auth_ref": [
      "r240",
      "r242",
      "r243",
      "r244",
      "r246",
      "r247",
      "r250",
      "r251",
      "r632"
     ]
    },
    "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery due to Disqualification of Tax Benefits, Amount",
        "terseLabel": "Forgone Recovery due to Disqualification of Tax Benefits, Amount"
       }
      }
     },
     "auth_ref": [
      "r706",
      "r716",
      "r726",
      "r758"
     ]
    },
    "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ForgoneRecoveryDueToExpenseOfEnforcementAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery due to Expense of Enforcement, Amount",
        "terseLabel": "Forgone Recovery due to Expense of Enforcement, Amount"
       }
      }
     },
     "auth_ref": [
      "r706",
      "r716",
      "r726",
      "r758"
     ]
    },
    "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ForgoneRecoveryDueToViolationOfHomeCountryLawAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery due to Violation of Home Country Law, Amount",
        "terseLabel": "Forgone Recovery due to Violation of Home Country Law, Amount"
       }
      }
     },
     "auth_ref": [
      "r706",
      "r716",
      "r726",
      "r758"
     ]
    },
    "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ForgoneRecoveryExplanationOfImpracticabilityTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery, Explanation of Impracticability [Text Block]",
        "terseLabel": "Forgone Recovery, Explanation of Impracticability"
       }
      }
     },
     "auth_ref": [
      "r706",
      "r716",
      "r726",
      "r758"
     ]
    },
    "ecd_ForgoneRecoveryIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "ForgoneRecoveryIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Forgone Recovery, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r706",
      "r716",
      "r726",
      "r758"
     ]
    },
    "ecd_FrValAsOfPrrYrEndOfEqtyAwrdsGrntdInPrrYrsFldVstngCondsDrngCvrdYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "FrValAsOfPrrYrEndOfEqtyAwrdsGrntdInPrrYrsFldVstngCondsDrngCvrdYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year [Member]",
        "terseLabel": "Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year"
       }
      }
     },
     "auth_ref": [
      "r739"
     ]
    },
    "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GainLossOnSaleOfPropertyPlantEquipment",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Gain (Loss) on Disposition of Property Plant Equipment",
        "negatedLabel": "(Gain)/Loss on disposal of property, plant and 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": [
      "r3"
     ]
    },
    "us-gaap_Goodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "Goodwill",
     "crdr": "debit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Goodwill",
        "label": "Goodwill",
        "documentation": "Amount, after accumulated impairment loss, of asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized."
       }
      }
     },
     "auth_ref": [
      "r102",
      "r228",
      "r498",
      "r647",
      "r655",
      "r670",
      "r677",
      "r820",
      "r821"
     ]
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Goodwill and Intangible Assets Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNet"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Goodwill and Other Intangible Assets, Net",
        "label": "Goodwill and Intangible Assets Disclosure [Text Block]",
        "documentation": "The entire disclosure for goodwill and intangible assets."
       }
      }
     },
     "auth_ref": [
      "r819",
      "r822"
     ]
    },
    "us-gaap_GoodwillLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GoodwillLineItems",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Goodwill [Line Items]",
        "label": "Goodwill [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": [
      "r229",
      "r230",
      "r231",
      "r232",
      "r233",
      "r234",
      "r235",
      "r236",
      "r237",
      "r238",
      "r239",
      "r655"
     ]
    },
    "trex_GrossAssetAndLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "GrossAssetAndLiability",
     "crdr": "debit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Gross asset and liability",
        "label": "Gross asset and liability",
        "documentation": "Gross asset and liability"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GrossProfit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GrossProfit",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "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": [
      "r44",
      "r48",
      "r76",
      "r132",
      "r208",
      "r273",
      "r274",
      "r275",
      "r276",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r453",
      "r640",
      "r646",
      "r810",
      "r812",
      "r813",
      "r814",
      "r815",
      "r845"
     ]
    },
    "us-gaap_GuaranteeObligationsByNatureAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GuaranteeObligationsByNatureAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Guarantor Obligations, Nature [Axis]",
        "label": "Guarantor Obligations, Nature [Axis]",
        "documentation": "Information by nature of guarantee."
       }
      }
     },
     "auth_ref": [
      "r266",
      "r267",
      "r268",
      "r269"
     ]
    },
    "us-gaap_GuaranteeObligationsNatureDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "GuaranteeObligationsNatureDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Guarantor Obligations, Nature [Domain]",
        "label": "Guarantor Obligations, Nature [Domain]",
        "documentation": "Represents a description of the nature of the guarantee or each group of similar guarantees."
       }
      }
     },
     "auth_ref": [
      "r266",
      "r267",
      "r268",
      "r269"
     ]
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Income before income 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": [
      "r45",
      "r72",
      "r76",
      "r502",
      "r512",
      "r640",
      "r646",
      "r810",
      "r812",
      "r813",
      "r814",
      "r815"
     ]
    },
    "us-gaap_IncomeStatementAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeStatementAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxAuthorityNameAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxAuthorityNameAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Authority, Name [Axis]",
        "documentation": "Information by name of taxing authority."
       }
      }
     },
     "auth_ref": [
      "r384",
      "r878"
     ]
    },
    "us-gaap_IncomeTaxAuthorityNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxAuthorityNameDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Authority, Name [Domain]",
        "documentation": "Named agency, division or body that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes."
       }
      }
     },
     "auth_ref": [
      "r384",
      "r878"
     ]
    },
    "us-gaap_IncomeTaxContingencyLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxContingencyLineItems",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income Tax Contingency [Line Items]",
        "label": "Income Tax Contingency [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_IncomeTaxContingencyTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxContingencyTable",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income Tax Contingency [Table]",
        "label": "Income Tax Contingency [Table]",
        "documentation": "Disclosure of information about tax positions taken in the tax returns filed or to be filed for which it is more likely than not that the tax position will not be sustained upon examination by taxing authorities and other income tax contingencies. Includes, but is not limited to, interest and penalties, reconciliation of unrecognized tax benefits, unrecognized tax benefits that would affect the effective tax rate, tax years that remain subject to examination by tax jurisdictions, and information about positions for which it is reasonably possible that amounts unrecognized will significantly change within 12 months."
       }
      }
     },
     "auth_ref": [
      "r877"
     ]
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxDisclosureTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/IncomeTaxes"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income Taxes",
        "label": "Income Tax Disclosure [Text Block]",
        "documentation": "The entire disclosure for income tax."
       }
      }
     },
     "auth_ref": [
      "r133",
      "r376",
      "r380",
      "r381",
      "r382",
      "r383",
      "r385",
      "r387",
      "r395",
      "r397",
      "r398",
      "r399",
      "r551",
      "r667"
     ]
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome",
      "http://www.trex.com/20250331/taxonomy/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Provision for income taxes",
        "terseLabel": "Income tax expense (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": [
      "r78",
      "r83",
      "r158",
      "r159",
      "r176",
      "r189",
      "r198",
      "r379",
      "r380",
      "r396",
      "r519",
      "r667"
     ]
    },
    "us-gaap_IncomeTaxesPaidNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxesPaidNet",
     "crdr": "credit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Cash paid for income taxes, net",
        "label": "Income Taxes Paid, Net",
        "documentation": "Amount, after refund, of cash paid to foreign, federal, state, and local jurisdictions as income tax."
       }
      }
     },
     "auth_ref": [
      "r12",
      "r128",
      "r388",
      "r389"
     ]
    },
    "us-gaap_IncomeTaxesReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncomeTaxesReceivable",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsSummaryOfPrepaidExpensesAndOtherAssetsDetail": {
       "parentTag": "us-gaap_PrepaidExpenseAndOtherAssetsCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsSummaryOfPrepaidExpensesAndOtherAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income tax receivable",
        "label": "Income Taxes Receivable, Current",
        "documentation": "Carrying amount due within one year of the balance sheet date (or one operating cycle, if longer) from tax authorities as of the balance sheet date representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes."
       }
      }
     },
     "auth_ref": [
      "r65",
      "r791"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInAccountsPayable",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 8.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounts payable",
        "label": "Increase (Decrease) in Accounts Payable",
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount 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": [
      "r2"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "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": [
      "r2"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 9.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accrued expenses and other liabilities",
        "label": "Increase (Decrease) in Accrued Liabilities and Other Operating Liabilities",
        "documentation": "Amount of increase (decrease) in accrued expenses, and obligations classified as other."
       }
      }
     },
     "auth_ref": [
      "r798"
     ]
    },
    "us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 10.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income taxes receivable/payable",
        "label": "Increase (Decrease) in Income Taxes Payable, Net of Income Taxes Receivable",
        "documentation": "The increase (decrease) during the reporting period in the amounts payable to taxing authorities for taxes that are based on the reporting entity's earnings, net of amounts receivable from taxing authorities for refunds of overpayments or recoveries of income taxes."
       }
      }
     },
     "auth_ref": [
      "r798"
     ]
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInInventories",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Inventories",
        "label": "Increase (Decrease) in Inventories",
        "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "us-gaap_IncreaseDecreaseInOperatingAssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInOperatingAssetsAbstract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Changes in operating assets and liabilities:",
        "label": "Increase (Decrease) in Operating Assets [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Prepaid expenses and other 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": [
      "r2"
     ]
    },
    "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Dilutive securities",
        "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-based Payment Arrangements",
        "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method."
       }
      }
     },
     "auth_ref": [
      "r166",
      "r167",
      "r168",
      "r173",
      "r340"
     ]
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IndefiniteLivedIntangibleAssetsByMajorClassAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Indefinite-lived Intangible Assets [Axis]",
        "label": "Indefinite-lived Intangible Assets [Axis]",
        "documentation": "Information by type or class of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit."
       }
      }
     },
     "auth_ref": [
      "r240",
      "r245",
      "r249",
      "r656"
     ]
    },
    "us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IndefiniteLivedIntangibleAssetsMajorClassNameDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Indefinite-lived Intangible Assets, Major Class Name [Domain]",
        "label": "Indefinite-lived Intangible Assets, Major Class Name [Domain]",
        "documentation": "The major class of indefinite-lived intangible asset (for example, trade names, etc. but not all-inclusive), excluding goodwill. A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of the company."
       }
      }
     },
     "auth_ref": [
      "r240",
      "r245",
      "r249",
      "r656"
     ]
    },
    "ecd_IndividualAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "IndividualAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure",
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure",
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements",
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Individual [Axis]",
        "terseLabel": "Individual:"
       }
      }
     },
     "auth_ref": [
      "r706",
      "r716",
      "r726",
      "r750",
      "r758",
      "r762",
      "r770"
     ]
    },
    "trex_IndustrialRevenueBondsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "IndustrialRevenueBondsMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Industrial Revenue Bonds Member",
        "documentation": "Industrial Revenue Bonds.",
        "terseLabel": "Industrial Revenue Bonds [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_InsiderTradingArrLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "InsiderTradingArrLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Arrangements [Line Items]",
        "terseLabel": "Insider Trading Arrangements:"
       }
      }
     },
     "auth_ref": [
      "r768"
     ]
    },
    "ecd_InsiderTradingPoliciesProcLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "InsiderTradingPoliciesProcLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Policies and Procedures [Line Items]",
        "terseLabel": "Insider Trading Policies and Procedures:"
       }
      }
     },
     "auth_ref": [
      "r698",
      "r774"
     ]
    },
    "ecd_InsiderTrdPoliciesProcAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "InsiderTrdPoliciesProcAdoptedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Policies and Procedures Adopted [Flag]",
        "terseLabel": "Insider Trading Policies and Procedures Adopted"
       }
      }
     },
     "auth_ref": [
      "r698",
      "r774"
     ]
    },
    "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "InsiderTrdPoliciesProcNotAdoptedTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Policies and Procedures Not Adopted [Text Block]",
        "terseLabel": "Insider Trading Policies and Procedures Not Adopted"
       }
      }
     },
     "auth_ref": [
      "r698",
      "r774"
     ]
    },
    "us-gaap_IntangibleAssetsGrossExcludingGoodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IntangibleAssetsGrossExcludingGoodwill",
     "crdr": "debit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Intangible Assets",
        "label": "Intangible Assets, Gross (Excluding Goodwill)",
        "documentation": "Amount before accumulated amortization of intangible assets, excluding goodwill."
       }
      }
     },
     "auth_ref": [
      "r102"
     ]
    },
    "us-gaap_IntangibleAssetsNetIncludingGoodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "IntangibleAssetsNetIncludingGoodwill",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Goodwill and other intangible assets, net",
        "label": "Intangible Assets, Net (Including Goodwill)",
        "documentation": "Amount, after impairment and amortization, of goodwill, indefinite-lived, and finite-lived intangible assets."
       }
      }
     },
     "auth_ref": [
      "r818"
     ]
    },
    "us-gaap_InterestIncomeExpenseNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InterestIncomeExpenseNet",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Interest Income (Expense), Net",
        "negatedLabel": "Interest expense (income), net",
        "documentation": "Amount of interest income (expense) classified as operating."
       }
      }
     },
     "auth_ref": [
      "r499",
      "r812"
     ]
    },
    "us-gaap_InterestPaidNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InterestPaidNet",
     "crdr": "credit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Cash paid for interest, net of capitalized interest",
        "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": [
      "r123",
      "r126",
      "r127"
     ]
    },
    "us-gaap_InternalRevenueServiceIRSMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InternalRevenueServiceIRSMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Federal Tax Jurisdiction [Member]",
        "label": "Internal Revenue Service (IRS) [Member]",
        "documentation": "Designated tax department of the United States of America government entitled to levy and collect income taxes from the entity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InternetDomainNamesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InternetDomainNamesMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Domain Names [Member]",
        "label": "Internet Domain Names [Member]",
        "documentation": "String of typographic characters used to describe the location of a specific individual, business, computer, or piece of information online. Formally known as the Uniform Resource Locator or URL, it is often considered to be the address of a certain World Wide Web site."
       }
      }
     },
     "auth_ref": [
      "r21",
      "r823",
      "r824",
      "r825",
      "r826",
      "r827",
      "r828",
      "r829",
      "r830"
     ]
    },
    "us-gaap_InventoryDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryDisclosureTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/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": [
      "r224"
     ]
    },
    "us-gaap_InventoryFinishedGoods": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryFinishedGoods",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/InventoriesSummaryOfInventoriesDetail": {
       "parentTag": "us-gaap_InventoryGross",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/InventoriesSummaryOfInventoriesDetail"
     ],
     "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": [
      "r792"
     ]
    },
    "us-gaap_InventoryGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryGross",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/InventoriesSummaryOfInventoriesDetail": {
       "parentTag": "us-gaap_LIFOInventoryAmount",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/InventoriesSummaryOfInventoriesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total FIFO (first-in, first-out) inventories",
        "label": "Inventory, Gross",
        "documentation": "Gross amount, as of the balance sheet date, of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process."
       }
      }
     },
     "auth_ref": [
      "r795"
     ]
    },
    "us-gaap_InventoryLIFOReserve": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryLIFOReserve",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/InventoriesSummaryOfInventoriesDetail": {
       "parentTag": "us-gaap_LIFOInventoryAmount",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/InventoriesSummaryOfInventoriesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Reserve to adjust inventories to LIFO value",
        "label": "Inventory, LIFO Reserve",
        "documentation": "Amount by which inventory stated at last-in first-out (LIFO) is less than (in excess of) inventory stated at other inventory cost methods."
       }
      }
     },
     "auth_ref": [
      "r794"
     ]
    },
    "us-gaap_InventoryNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryNet",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "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": [
      "r110",
      "r635",
      "r677"
     ]
    },
    "us-gaap_InventoryRawMaterials": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InventoryRawMaterials",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/InventoriesSummaryOfInventoriesDetail": {
       "parentTag": "us-gaap_InventoryGross",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/InventoriesSummaryOfInventoriesDetail"
     ],
     "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": [
      "r793"
     ]
    },
    "us-gaap_InvestmentsAllOtherInvestmentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "InvestmentsAllOtherInvestmentsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Investments, All Other Investments [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LIFOInventoryAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LIFOInventoryAmount",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/InventoriesSummaryOfInventoriesDetail": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/InventoriesSummaryOfInventoriesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total LIFO inventories",
        "label": "LIFO Inventory Amount",
        "documentation": "The amount of LIFO (last in first out) inventory present at the reporting date when inventory is also valued using different valuation methods."
       }
      }
     },
     "auth_ref": [
      "r637"
     ]
    },
    "us-gaap_LeasesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LeasesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Leases [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Maturities of operating lease liabilities",
        "label": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]",
        "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position."
       }
      }
     },
     "auth_ref": [
      "r886"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/DisclosureLeasesMaturitiesOfOperatingLeaseLiabilitiesDetail2": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      },
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total lease payments",
        "label": "Lessee, Operating Lease, Liability, Payments, Due",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease."
       }
      }
     },
     "auth_ref": [
      "r475"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Thereafter",
        "label": "Lessee, Operating Lease, Liability, Payments, Due after Year Five",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r475"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, Payments, Due Next Twelve Months",
        "verboseLabel": "2026",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r475"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, Payments, Due Year Four",
        "verboseLabel": "2029",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r475"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, Payments, Due Year Three",
        "verboseLabel": "2028",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r475"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, Payments, Due Year Two",
        "verboseLabel": "2027",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)."
       }
      }
     },
     "auth_ref": [
      "r475"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year",
        "terseLabel": "2025",
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year."
       }
      }
     },
     "auth_ref": [
      "r886"
     ]
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/DisclosureLeasesMaturitiesOfOperatingLeaseLiabilitiesDetail2": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Less imputed interest",
        "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount",
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease."
       }
      }
     },
     "auth_ref": [
      "r475"
     ]
    },
    "trex_LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail": {
       "parentTag": "us-gaap_OperatingLeaseLiability",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Accrued expenses and other current liabilities",
        "label": "Lessee Operating leases Accrued Expenses And Other Current Liabilities",
        "documentation": "Represents accrued expenses and other current liabilities of operating leases"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LesseeOperatingLeasesTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/Leases"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Leases",
        "label": "Lessee, Operating Leases [Text Block]",
        "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability."
       }
      }
     },
     "auth_ref": [
      "r464"
     ]
    },
    "us-gaap_LessorOperatingLeaseTermOfContract": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LessorOperatingLeaseTermOfContract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Operating Lease terms",
        "label": "Lessor, Operating Lease, Term of Contract",
        "documentation": "Term of lessor's operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r887"
     ]
    },
    "us-gaap_LetterOfCreditMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LetterOfCreditMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Letter of Credit [Member]",
        "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_Liabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "Liabilities",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total liabilities",
        "label": "Liabilities",
        "documentation": "Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r25",
      "r26",
      "r27",
      "r30",
      "r31",
      "r32",
      "r33",
      "r132",
      "r208",
      "r273",
      "r274",
      "r275",
      "r276",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r420",
      "r423",
      "r424",
      "r453",
      "r573",
      "r639",
      "r693",
      "r845",
      "r888",
      "r889"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesAndStockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total liabilities and stockholders' 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": [
      "r40",
      "r71",
      "r510",
      "r677",
      "r801",
      "r817",
      "r883"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "LIABILITIES AND STOCKHOLDERS' EQUITY",
        "label": "Liabilities and Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "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": [
      "r27",
      "r100",
      "r132",
      "r208",
      "r273",
      "r274",
      "r275",
      "r276",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r420",
      "r423",
      "r424",
      "r453",
      "r677",
      "r845",
      "r888",
      "r889"
     ]
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LiabilitiesCurrentAbstract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current liabilities",
        "label": "Liabilities, Current [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LineOfCredit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCredit",
     "crdr": "credit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-Term Line of Credit",
        "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": [
      "r7",
      "r69",
      "r896"
     ]
    },
    "trex_LineOfCreditFacilityAdditionalBorrowingCapacity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "LineOfCreditFacilityAdditionalBorrowingCapacity",
     "crdr": "credit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revolving loans in a collective maximum principal amount",
        "label": "Line of Credit Facility Additional Borrowing Capacity",
        "documentation": "Line of Credit Facility, Additional Borrowing Capacity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LineOfCreditFacilityAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Lender Name [Axis]",
        "documentation": "Information by name of lender, which may be a single entity (for example, but not limited to, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit."
       }
      }
     },
     "auth_ref": [
      "r24",
      "r29",
      "r800",
      "r843",
      "r844"
     ]
    },
    "us-gaap_LineOfCreditFacilityExpirationDate1": {
     "xbrltype": "dateItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityExpirationDate1",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Termination date of the Credit Agreement",
        "label": "Line of Credit Facility, Expiration Date",
        "documentation": "Date the credit facility terminates, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": [
      "r24",
      "r29"
     ]
    },
    "us-gaap_LineOfCreditFacilityLenderDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityLenderDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Line of Credit Facility, Lender [Domain]",
        "documentation": "Identification of the lender, which may be a single entity (for example, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit, including a letter of credit facility."
       }
      }
     },
     "auth_ref": [
      "r24",
      "r29",
      "r800",
      "r843"
     ]
    },
    "us-gaap_LineOfCreditFacilityLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityLineItems",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Line of Credit Facility [Line Items]",
        "label": "Line of Credit Facility [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r272",
      "r800",
      "r843"
     ]
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "crdr": "credit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revolving loans in a collective maximum principal amount",
        "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": [
      "r24",
      "r29"
     ]
    },
    "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityRemainingBorrowingCapacity",
     "crdr": "credit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Remaining available borrowing capacity",
        "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": [
      "r24",
      "r29",
      "r272"
     ]
    },
    "us-gaap_LineOfCreditFacilityTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LineOfCreditFacilityTable",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Line of Credit Facility [Table]",
        "label": "Line of Credit Facility [Table]",
        "documentation": "Disclosure of information about short-term and long-term contractual arrangements with lender under which borrowing can occur up to maximum amount. Includes, but is not limited to, letter of credit, standby letter of credit, and revolving credit arrangement."
       }
      }
     },
     "auth_ref": [
      "r24",
      "r29",
      "r272",
      "r800",
      "r843"
     ]
    },
    "us-gaap_LinesOfCreditCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LinesOfCreditCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets",
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Line of credit",
        "label": "Line of Credit, Current",
        "terseLabel": "Outstanding borrowing capacity",
        "documentation": "The carrying value as of the balance sheet date of the current portion of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement."
       }
      }
     },
     "auth_ref": [
      "r25",
      "r67"
     ]
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermPurchaseCommitmentByCategoryOfItemPurchasedAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Category of Item Purchased [Axis]",
        "label": "Category of Item Purchased [Axis]",
        "documentation": "Information by category of items purchased under a long-term purchase commitment."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "LongTermPurchaseCommitmentCategoryOfItemPurchasedDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-term Purchase Commitment, Category of Item Purchased [Domain]",
        "label": "Long-term Purchase Commitment, Category of Item Purchased [Domain]",
        "documentation": "General description of the goods or services to be purchased from the counterparty to the long-term purchase commitment."
       }
      }
     },
     "auth_ref": []
    },
    "srt_MaximumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "MaximumMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/LeasesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maximum [Member]",
        "label": "Maximum [Member]"
       }
      }
     },
     "auth_ref": [
      "r262",
      "r263",
      "r264",
      "r265",
      "r336",
      "r374",
      "r450",
      "r488",
      "r527",
      "r528",
      "r541",
      "r565",
      "r566",
      "r618",
      "r619",
      "r620",
      "r621",
      "r622",
      "r630",
      "r631",
      "r653",
      "r662",
      "r664",
      "r671",
      "r672",
      "r673",
      "r674",
      "r679",
      "r847",
      "r890",
      "r891",
      "r892",
      "r893",
      "r894",
      "r895"
     ]
    },
    "ecd_MeasureAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "MeasureAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measure [Axis]",
        "terseLabel": "Measure:"
       }
      }
     },
     "auth_ref": [
      "r742"
     ]
    },
    "ecd_MeasureName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "MeasureName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Measure Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r742"
     ]
    },
    "srt_MinimumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "MinimumMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/LeasesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Minimum [Member]",
        "label": "Minimum [Member]"
       }
      }
     },
     "auth_ref": [
      "r262",
      "r263",
      "r264",
      "r265",
      "r336",
      "r374",
      "r450",
      "r488",
      "r527",
      "r528",
      "r541",
      "r565",
      "r566",
      "r618",
      "r619",
      "r620",
      "r621",
      "r622",
      "r630",
      "r631",
      "r653",
      "r662",
      "r664",
      "r671",
      "r672",
      "r673",
      "r679",
      "r847",
      "r890",
      "r891",
      "r892",
      "r893",
      "r894",
      "r895"
     ]
    },
    "ecd_MnpiDiscTimedForCompValFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "MnpiDiscTimedForCompValFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "MNPI Disclosure Timed for Compensation Value [Flag]",
        "terseLabel": "MNPI Disclosure Timed for Compensation Value"
       }
      }
     },
     "auth_ref": [
      "r761"
     ]
    },
    "ecd_MtrlTermsOfTrdArrTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "MtrlTermsOfTrdArrTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Material Terms of Trading Arrangement [Text Block]",
        "terseLabel": "Material Terms of Trading Arrangement"
       }
      }
     },
     "auth_ref": [
      "r769"
     ]
    },
    "ecd_NamedExecutiveOfficersFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NamedExecutiveOfficersFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Named Executive Officers, Footnote [Text Block]",
        "terseLabel": "Named Executive Officers, Footnote"
       }
      }
     },
     "auth_ref": [
      "r743"
     ]
    },
    "us-gaap_NatureOfOperations": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NatureOfOperations",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/BusinessAndOrganization"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Business and Organization",
        "label": "Nature of Operations [Text Block]",
        "documentation": "The entire disclosure for the nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward."
       }
      }
     },
     "auth_ref": [
      "r79",
      "r85"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Financing Activities",
        "totalLabel": "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": [
      "r125"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "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/2024",
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash 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": [
      "r125"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "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/2024",
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Operating Activities",
        "totalLabel": "Net cash provided by operating activities",
        "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities."
       }
      }
     },
     "auth_ref": [
      "r55",
      "r56",
      "r57"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "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/2024",
     "localname": "NetIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity",
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome",
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail",
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Income (Loss)",
        "terseLabel": "Net Income (Loss)",
        "totalLabel": "Net income",
        "verboseLabel": "Net income available to common shareholders",
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent."
       }
      }
     },
     "auth_ref": [
      "r49",
      "r57",
      "r73",
      "r98",
      "r114",
      "r116",
      "r120",
      "r132",
      "r146",
      "r151",
      "r152",
      "r153",
      "r154",
      "r155",
      "r158",
      "r159",
      "r170",
      "r208",
      "r273",
      "r274",
      "r275",
      "r276",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r408",
      "r417",
      "r449",
      "r453",
      "r514",
      "r595",
      "r611",
      "r612",
      "r691",
      "r845"
     ]
    },
    "us-gaap_NetIncomeLossAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NetIncomeLossAbstract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Numerator:",
        "label": "Net Income (Loss) Attributable to Parent [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/RecentlyAdoptedAccountingStandards"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Recently Adopted Accounting Standards",
        "label": "New Accounting Pronouncements and Changes in Accounting Principles [Text Block]",
        "documentation": "The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle."
       }
      }
     },
     "auth_ref": [
      "r84",
      "r97",
      "r144",
      "r145",
      "r148",
      "r149",
      "r161",
      "r162",
      "r206",
      "r214",
      "r215",
      "r406",
      "r407",
      "r409",
      "r417",
      "r434",
      "r445",
      "r478",
      "r484",
      "r485",
      "r494",
      "r495",
      "r496",
      "r535",
      "r536",
      "r537",
      "r538",
      "r540"
     ]
    },
    "us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DisclosureRecentlyAdoptedAccountingStandardsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "New Accounting Pronouncements or Change in Accounting Principle [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": [
      "r92",
      "r93",
      "r94",
      "r95",
      "r96",
      "r97",
      "r143",
      "r146",
      "r147",
      "r148",
      "r150",
      "r153",
      "r161",
      "r175",
      "r205",
      "r206",
      "r210",
      "r211",
      "r212",
      "r213",
      "r216",
      "r217",
      "r218",
      "r219",
      "r220",
      "r221",
      "r252",
      "r253",
      "r259",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r400",
      "r401",
      "r402",
      "r403",
      "r404",
      "r405",
      "r407",
      "r408",
      "r409",
      "r410",
      "r411",
      "r412",
      "r413",
      "r414",
      "r415",
      "r416",
      "r417",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r435",
      "r436",
      "r438",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r446",
      "r447",
      "r448",
      "r449",
      "r451",
      "r452",
      "r461",
      "r462",
      "r463",
      "r477",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r491",
      "r492",
      "r493",
      "r529",
      "r530",
      "r531",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540",
      "r544"
     ]
    },
    "us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NewAccountingPronouncementsOrChangeInAccountingPrincipleTable",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DisclosureRecentlyAdoptedAccountingStandardsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Standards Update and Change in Accounting Principle [Table]",
        "documentation": "Disclosure of information about change in accounting principle or amendment to accounting standards or both. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards and other change in accounting principle."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r92",
      "r93",
      "r94",
      "r95",
      "r96",
      "r97",
      "r143",
      "r146",
      "r147",
      "r148",
      "r150",
      "r153",
      "r161",
      "r175",
      "r205",
      "r206",
      "r210",
      "r211",
      "r212",
      "r213",
      "r216",
      "r217",
      "r218",
      "r219",
      "r220",
      "r221",
      "r252",
      "r253",
      "r259",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r400",
      "r401",
      "r402",
      "r403",
      "r404",
      "r405",
      "r407",
      "r408",
      "r409",
      "r410",
      "r411",
      "r412",
      "r413",
      "r414",
      "r415",
      "r416",
      "r417",
      "r425",
      "r426",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r432",
      "r433",
      "r435",
      "r436",
      "r438",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r446",
      "r447",
      "r448",
      "r449",
      "r451",
      "r452",
      "r461",
      "r462",
      "r463",
      "r477",
      "r479",
      "r480",
      "r481",
      "r482",
      "r483",
      "r491",
      "r492",
      "r493",
      "r529",
      "r530",
      "r531",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r537",
      "r538",
      "r539",
      "r540",
      "r544"
     ]
    },
    "trex_NewAccountingStandardsNotYetAdoptedAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "NewAccountingStandardsNotYetAdoptedAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "New Accounting Standards Not Yet Adopted [Abstract]",
        "documentation": "New accounting standards not yet adopted [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_NonGaapMeasureDescriptionTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonGaapMeasureDescriptionTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-GAAP Measure Description [Text Block]",
        "terseLabel": "Non-GAAP Measure Description"
       }
      }
     },
     "auth_ref": [
      "r742"
     ]
    },
    "ecd_NonNeosMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonNeosMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-NEOs [Member]",
        "terseLabel": "Non-NEOs"
       }
      }
     },
     "auth_ref": [
      "r706",
      "r716",
      "r726",
      "r750",
      "r758"
     ]
    },
    "ecd_NonPeoNeoAvgCompActuallyPaidAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonPeoNeoAvgCompActuallyPaidAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-PEO NEO Average Compensation Actually Paid Amount",
        "terseLabel": "Non-PEO NEO Average Compensation Actually Paid Amount"
       }
      }
     },
     "auth_ref": [
      "r733"
     ]
    },
    "ecd_NonPeoNeoAvgTotalCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonPeoNeoAvgTotalCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-PEO NEO Average Total Compensation Amount",
        "terseLabel": "Non-PEO NEO Average Total Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r732"
     ]
    },
    "ecd_NonPeoNeoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonPeoNeoMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-PEO NEO [Member]",
        "terseLabel": "Non-PEO NEO"
       }
      }
     },
     "auth_ref": [
      "r750"
     ]
    },
    "trex_NonRule10B51ArrModifiedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "NonRule10B51ArrModifiedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non Rule 10b51 Arr Modified Flag",
        "documentation": "Non rule 10b51 arr modified flag.",
        "terseLabel": "Non-Rule 10b5-1 Arrangement Modified"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_NonRule10b51ArrAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonRule10b51ArrAdoptedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-Rule 10b5-1 Arrangement Adopted [Flag]",
        "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted"
       }
      }
     },
     "auth_ref": [
      "r769"
     ]
    },
    "ecd_NonRule10b51ArrTrmntdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "NonRule10b51ArrTrmntdFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Non-Rule 10b5-1 Arrangement Terminated [Flag]",
        "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated"
       }
      }
     },
     "auth_ref": [
      "r769"
     ]
    },
    "us-gaap_NumberOfReportableSegments": {
     "xbrltype": "integerItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "NumberOfReportableSegments",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/BusinessAndOrganizationAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/DisclosureSegmentInformationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "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": [
      "r641",
      "r651",
      "r811"
     ]
    },
    "trex_NumberOfSalesRetailers": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "NumberOfSalesRetailers",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DisclosureSegmentInformationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of national sales retailers.",
        "label": "Number Of Sales Retailers",
        "terseLabel": "Number of national retailers"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OpenTaxYear": {
     "xbrltype": "gYearListItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OpenTaxYear",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/IncomeTaxesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Tax years subject to examination",
        "label": "Open Tax Year",
        "documentation": "Tax year that remains open to examination under enacted tax laws, in YYYY format."
       }
      }
     },
     "auth_ref": [
      "r384"
     ]
    },
    "us-gaap_OperatingIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Income from operations",
        "label": "Operating Income (Loss)",
        "documentation": "The net result for the period of deducting operating expenses from operating revenues."
       }
      }
     },
     "auth_ref": [
      "r76",
      "r640",
      "r810",
      "r812",
      "r813",
      "r814",
      "r815"
     ]
    },
    "us-gaap_OperatingLeaseCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseCost",
     "crdr": "debit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Operating lease cost",
        "label": "Operating Lease, Cost",
        "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability."
       }
      }
     },
     "auth_ref": [
      "r470",
      "r676"
     ]
    },
    "us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilitiesPaymentsDueAbstract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease Liabilities, Payments Due [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiability",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/DisclosureLeasesMaturitiesOfOperatingLeaseLiabilitiesDetail2": {
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail",
      "http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total operating lease liabilities",
        "terseLabel": "Total operating lease liabilities",
        "label": "Operating Lease, Liability",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease."
       }
      }
     },
     "auth_ref": [
      "r467"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilityCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail": {
       "parentTag": "trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating lease liabilities",
        "label": "Operating Lease, Liability, Current",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current."
       }
      }
     },
     "auth_ref": [
      "r467"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": {
     "xbrltype": "enumerationSetItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Operating Lease, Liability, Current, Statement of Financial Position [Extensible List]",
        "documentation": "Indicates line item in statement of financial position that includes current operating lease liability."
       }
      }
     },
     "auth_ref": [
      "r468"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail": {
       "parentTag": "us-gaap_OperatingLeaseLiability",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets",
      "http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "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": [
      "r467"
     ]
    },
    "us-gaap_OperatingLeasePayments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeasePayments",
     "crdr": "credit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Cash paid for amounts included in the measurement of operating lease liabilities",
        "label": "Operating Lease, Payments",
        "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use."
       }
      }
     },
     "auth_ref": [
      "r469",
      "r471"
     ]
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseRightOfUseAsset",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets",
      "http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Operating lease assets",
        "terseLabel": "Operating lease ROU assets",
        "label": "Operating Lease, Right-of-Use Asset",
        "documentation": "Amount of lessee's right to use underlying asset under operating lease."
       }
      }
     },
     "auth_ref": [
      "r466"
     ]
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Weighted average discount rate",
        "label": "Operating Lease, Weighted Average Discount Rate, Percent",
        "documentation": "Weighted average discount rate for operating lease calculated at point in time."
       }
      }
     },
     "auth_ref": [
      "r474",
      "r676"
     ]
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Weighted average remaining lease term",
        "label": "Operating Lease, Weighted Average Remaining Lease Term",
        "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r473",
      "r676"
     ]
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Organization, Consolidation and Presentation of Financial Statements [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/BasisOfPresentation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Basis of Presentation",
        "label": "Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]",
        "documentation": "The entire disclosure for organization, consolidation and basis of presentation of financial statements disclosure."
       }
      }
     },
     "auth_ref": [
      "r22",
      "r64",
      "r542",
      "r543"
     ]
    },
    "us-gaap_OtherAccruedLiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherAccruedLiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail": {
       "parentTag": "trex_AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesSummaryOfAccruedExpensesAndOtherLiabilitiesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other",
        "label": "Other Accrued Liabilities, Current",
        "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r26"
     ]
    },
    "us-gaap_OtherAssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherAssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsSummaryOfPrepaidExpensesAndOtherAssetsDetail": {
       "parentTag": "us-gaap_PrepaidExpenseAndOtherAssetsCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsSummaryOfPrepaidExpensesAndOtherAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other",
        "label": "Other Assets, Current",
        "documentation": "Amount of current assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r112",
      "r677"
     ]
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherAssetsNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other assets",
        "label": "Other Assets, Noncurrent",
        "documentation": "Amount of noncurrent assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r104"
     ]
    },
    "us-gaap_OtherLiabilitiesNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherLiabilitiesNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other long-term 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": [
      "r31"
     ]
    },
    "us-gaap_OtherNoncashIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "OtherNoncashIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Other non-cash adjustments",
        "label": "Other Noncash Income (Expense)",
        "documentation": "Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other."
       }
      }
     },
     "auth_ref": [
      "r57"
     ]
    },
    "ecd_OtherPerfMeasureAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "OtherPerfMeasureAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Performance Measure, Amount",
        "terseLabel": "Other Performance Measure, Amount"
       }
      }
     },
     "auth_ref": [
      "r742"
     ]
    },
    "ecd_OutstandingAggtErrCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "OutstandingAggtErrCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Outstanding Aggregate Erroneous Compensation Amount",
        "terseLabel": "Outstanding Aggregate Erroneous Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r704",
      "r714",
      "r724",
      "r756"
     ]
    },
    "ecd_OutstandingRecoveryCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "OutstandingRecoveryCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Outstanding Recovery Compensation Amount",
        "terseLabel": "Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r707",
      "r717",
      "r727",
      "r759"
     ]
    },
    "ecd_OutstandingRecoveryIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "OutstandingRecoveryIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Outstanding Recovery, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r707",
      "r717",
      "r727",
      "r759"
     ]
    },
    "ecd_PayVsPerformanceDisclosureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PayVsPerformanceDisclosureLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Pay vs Performance Disclosure [Line Items]",
        "terseLabel": "Pay vs Performance Disclosure"
       }
      }
     },
     "auth_ref": [
      "r731"
     ]
    },
    "us-gaap_PayablesAndAccrualsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PayablesAndAccrualsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Payables and Accruals [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "trex_PaymentsForProceedsFromFinancingCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "PaymentsForProceedsFromFinancingCosts",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Financing costs",
        "label": "Payments For Proceeds From Financing Costs",
        "documentation": "Payments for (proceeds from) financing costs."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PaymentsForRepurchaseOfCommonStock": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PaymentsForRepurchaseOfCommonStock",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Repurchases of common stock",
        "label": "Payments for Repurchase of Common Stock",
        "documentation": "The cash outflow to reacquire common stock during the period."
       }
      }
     },
     "auth_ref": [
      "r53"
     ]
    },
    "us-gaap_PaymentsToAcquireIntangibleAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PaymentsToAcquireIntangibleAssets",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Payments to Acquire Intangible Assets",
        "terseLabel": "Purchased intangibles",
        "negatedLabel": "Purchased intangibles",
        "documentation": "The cash outflow to acquire asset without physical form usually arising from contractual or other legal rights, excluding goodwill."
       }
      }
     },
     "auth_ref": [
      "r52"
     ]
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Expenditures for property, plant and equipment",
        "label": "Payments to Acquire Property, Plant, and Equipment",
        "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets."
       }
      }
     },
     "auth_ref": [
      "r52"
     ]
    },
    "ecd_PeerGroupIssuersFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeerGroupIssuersFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Peer Group Issuers, Footnote [Text Block]",
        "terseLabel": "Peer Group Issuers, Footnote"
       }
      }
     },
     "auth_ref": [
      "r741"
     ]
    },
    "ecd_PeerGroupTotalShareholderRtnAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeerGroupTotalShareholderRtnAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Peer Group Total Shareholder Return Amount",
        "terseLabel": "Peer Group Total Shareholder Return Amount"
       }
      }
     },
     "auth_ref": [
      "r741"
     ]
    },
    "ecd_PeoActuallyPaidCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeoActuallyPaidCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO Actually Paid Compensation Amount",
        "terseLabel": "PEO Actually Paid Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r733"
     ]
    },
    "ecd_PeoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeoMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO [Member]",
        "terseLabel": "PEO"
       }
      }
     },
     "auth_ref": [
      "r750"
     ]
    },
    "ecd_PeoName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeoName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO Name",
        "terseLabel": "PEO Name"
       }
      }
     },
     "auth_ref": [
      "r743"
     ]
    },
    "ecd_PeoTotalCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PeoTotalCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "PEO Total Compensation Amount",
        "terseLabel": "PEO Total Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r732"
     ]
    },
    "trex_PercentSensitivityChangeInExpectedSurfaceFlakingClaims": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "PercentSensitivityChangeInExpectedSurfaceFlakingClaims",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Percentage change in warranty claims used as a threshold for disclosure",
        "label": "Percent Sensitivity Change In Expected Surface Flaking Claims",
        "documentation": "Percentage change in the expected number of remaining claims to be settled with payment or the expected cost to settle claims used as a threshold for disclosure."
       }
      }
     },
     "auth_ref": []
    },
    "trex_PerformanceBasedRestrictedStockAdjustmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "PerformanceBasedRestrictedStockAdjustmentMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DisclosureStockbasedCompensationSummaryOfStockbasedCompensationExpensesParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Performance Based Restricted Stock Adjustment [Member]",
        "documentation": "Performance Based Restricted Stock Adjustment Member"
       }
      }
     },
     "auth_ref": []
    },
    "trex_PerformanceBasedRestrictedStockAndPerformanceBasedRestrictedStockUnitsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "PerformanceBasedRestrictedStockAndPerformanceBasedRestrictedStockUnitsMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DisclosureStockbasedCompensationSummaryOfStockbasedCompensationExpensesParentheticalDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Performance-Based Restricted Stock and Performance-Based Restricted Stock Units [Member]",
        "label": "Performance Based Restricted Stock And Performance Based Restricted Stock Units [Member]",
        "documentation": "Performance based restricted stock and performance based restricted stock units."
       }
      }
     },
     "auth_ref": []
    },
    "trex_PerformanceBasedRestrictedStockAndrestrictedStockunitsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "PerformanceBasedRestrictedStockAndrestrictedStockunitsMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationExpensesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Performance-Based Restricted Stock and Restricted Stock Units [Member]",
        "label": "Performance Based Restricted Stock And Restricted Stock Units [Member]",
        "documentation": "Performance\u200b based \u200brestricted\u200b stock\u200b and\u200b restricted\u200b stock\u200b units.\u200b"
       }
      }
     },
     "auth_ref": []
    },
    "trex_PerformanceBasedRestrictedStockUnitsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "PerformanceBasedRestrictedStockUnitsMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationGrantsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Performance Based Restricted Stock Units [Member]",
        "label": "Performance Based Restricted Stock Units [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PlanNameAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PlanNameAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Plan Name [Axis]",
        "label": "Plan Name [Axis]",
        "documentation": "Information by plan name for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r850",
      "r851",
      "r852",
      "r853",
      "r854",
      "r855",
      "r856",
      "r857",
      "r858",
      "r859",
      "r860",
      "r861",
      "r862",
      "r863",
      "r864",
      "r865",
      "r866",
      "r867",
      "r868",
      "r869",
      "r870",
      "r871",
      "r872",
      "r873",
      "r874",
      "r875"
     ]
    },
    "us-gaap_PlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PlanNameDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Plan Name [Domain]",
        "label": "Plan Name [Domain]",
        "documentation": "Plan name for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r850",
      "r851",
      "r852",
      "r853",
      "r854",
      "r855",
      "r856",
      "r857",
      "r858",
      "r859",
      "r860",
      "r861",
      "r862",
      "r863",
      "r864",
      "r865",
      "r866",
      "r867",
      "r868",
      "r869",
      "r870",
      "r871",
      "r872",
      "r873",
      "r874",
      "r875"
     ]
    },
    "ecd_PnsnAdjsPrrSvcCstMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PnsnAdjsPrrSvcCstMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Adjustments Prior Service Cost [Member]",
        "terseLabel": "Pension Adjustments Prior Service Cost"
       }
      }
     },
     "auth_ref": [
      "r734"
     ]
    },
    "ecd_PnsnAdjsSvcCstMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PnsnAdjsSvcCstMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Adjustments Service Cost [Member]",
        "terseLabel": "Pension Adjustments Service Cost"
       }
      }
     },
     "auth_ref": [
      "r778"
     ]
    },
    "ecd_PnsnBnftsAdjFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PnsnBnftsAdjFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pension Benefits Adjustments, Footnote [Text Block]",
        "terseLabel": "Pension Benefits Adjustments, Footnote"
       }
      }
     },
     "auth_ref": [
      "r733"
     ]
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockParOrStatedValuePerShare",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Preferred stock, par value",
        "label": "Preferred Stock, Par or Stated Value Per Share",
        "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer."
       }
      }
     },
     "auth_ref": [
      "r34",
      "r310"
     ]
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockSharesAuthorized",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Preferred stock, shares authorized",
        "label": "Preferred Stock, Shares Authorized",
        "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws."
       }
      }
     },
     "auth_ref": [
      "r34",
      "r575"
     ]
    },
    "us-gaap_PreferredStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockSharesIssued",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Preferred stock, shares issued",
        "label": "Preferred Stock, Shares Issued",
        "documentation": "Number of shares issued for nonredeemable preferred shares and preferred shares redeemable solely at option of issuer. Includes, but is not limited to, preferred shares issued, repurchased, and held as treasury shares. Excludes preferred shares classified as debt."
       }
      }
     },
     "auth_ref": [
      "r34",
      "r310"
     ]
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockSharesOutstanding",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Preferred stock, shares outstanding",
        "label": "Preferred Stock, Shares Outstanding",
        "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased."
       }
      }
     },
     "auth_ref": [
      "r34",
      "r575",
      "r593",
      "r927",
      "r928"
     ]
    },
    "us-gaap_PreferredStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PreferredStockValue",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Preferred stock, $0.01 par value, 3,000,000 shares authorized; none issued and outstanding",
        "label": "Preferred Stock, Value, Issued",
        "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity."
       }
      }
     },
     "auth_ref": [
      "r34",
      "r507",
      "r677"
     ]
    },
    "trex_PrepaidAndOtherCurrentAssetsDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "PrepaidAndOtherCurrentAssetsDisclosureTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Prepaid Expenses and Other Assets",
        "label": "Prepaid And Other Current Assets Disclosure [Text Block]",
        "documentation": "The entire disclosure pertaining to prepaid and other current assets."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PrepaidExpenseAndOtherAssetsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Prepaid Expense and Other Assets [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PrepaidExpenseAndOtherAssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 3.0
      },
      "http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsSummaryOfPrepaidExpensesAndOtherAssetsDetail": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets",
      "http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsSummaryOfPrepaidExpensesAndOtherAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total prepaid expenses and other assets",
        "terseLabel": "Prepaid expenses and other 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": [
      "r796"
     ]
    },
    "trex_PrepaidExpenseAndOtherAssetsCurrentTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "PrepaidExpenseAndOtherAssetsCurrentTableTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Prepaid Expenses and Other Assets",
        "label": "Prepaid Expense And Other Assets Current [Table Text Block]",
        "documentation": "Tabular disclosure pertaining to prepaid expense and other assets current."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_PrepaidExpenseCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PrepaidExpenseCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsSummaryOfPrepaidExpensesAndOtherAssetsDetail": {
       "parentTag": "us-gaap_PrepaidExpenseAndOtherAssetsCurrent",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/PrepaidExpensesAndOtherAssetsSummaryOfPrepaidExpensesAndOtherAssetsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Prepaid expenses",
        "label": "Prepaid Expense, Current",
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r111",
      "r225",
      "r226",
      "r636"
     ]
    },
    "us-gaap_ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from employee stock purchase and option plans",
        "label": "Proceeds from Issuance of Shares under Incentive and Share-based Compensation Plans, Including Stock Options",
        "documentation": "Amount of cash inflow from issuance of shares under share-based payment arrangement. Includes, but is not limited to, option exercised."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r6"
     ]
    },
    "us-gaap_ProceedsFromLinesOfCredit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromLinesOfCredit",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Borrowings under line of credit",
        "label": "Proceeds from Lines of Credit",
        "documentation": "Amount of cash inflow from contractual arrangement with the lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r800"
     ]
    },
    "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from sales 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": [
      "r51"
     ]
    },
    "srt_ProductOrServiceAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ProductOrServiceAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]"
       }
      }
     },
     "auth_ref": [
      "r201",
      "r489",
      "r520",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r633",
      "r663",
      "r678",
      "r679",
      "r680",
      "r681",
      "r682",
      "r837",
      "r838",
      "r849",
      "r897",
      "r898",
      "r899",
      "r900",
      "r901",
      "r902",
      "r903",
      "r904",
      "r905",
      "r906",
      "r907",
      "r908",
      "r909",
      "r910",
      "r911",
      "r912",
      "r913",
      "r914",
      "r915",
      "r916",
      "r917",
      "r918",
      "r919",
      "r920",
      "r921",
      "r922",
      "r923",
      "r924",
      "r925"
     ]
    },
    "us-gaap_ProductWarrantyLiabilityLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProductWarrantyLiabilityLineItems",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Product Warranty Liability [Line Items]",
        "label": "Product Warranty Liability [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_ProductWarrantyLiabilityTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProductWarrantyLiabilityTable",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Product Warranty Liability [Table]",
        "label": "Product Warranty Liability [Table]",
        "documentation": "Disclosure of information about product warranty liability, including, but not limited to, reductions in the liability for payments made under the warranty, changes in the liability for accruals related to product warranties issued, and changes in the liability for accruals related to preexisting warranties."
       }
      }
     },
     "auth_ref": []
    },
    "trex_ProductWarrantyMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "ProductWarrantyMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Product Warranty [Member]",
        "label": "Product Warranty [Member]",
        "documentation": "Product warranty."
       }
      }
     },
     "auth_ref": []
    },
    "srt_ProductsAndServicesDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ProductsAndServicesDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Domain]"
       }
      }
     },
     "auth_ref": [
      "r201",
      "r489",
      "r520",
      "r521",
      "r522",
      "r523",
      "r524",
      "r525",
      "r526",
      "r633",
      "r663",
      "r678",
      "r679",
      "r680",
      "r681",
      "r682",
      "r837",
      "r838",
      "r849",
      "r897",
      "r898",
      "r899",
      "r900",
      "r901",
      "r902",
      "r903",
      "r904",
      "r905",
      "r906",
      "r907",
      "r908",
      "r909",
      "r910",
      "r911",
      "r912",
      "r913",
      "r914",
      "r915",
      "r916",
      "r917",
      "r918",
      "r919",
      "r920",
      "r921",
      "r922",
      "r923",
      "r924",
      "r925"
     ]
    },
    "trex_ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Products Sold on or After January One, Two Thousand and Twenty Three [Member]",
        "documentation": "Products sold on or after january\u00a0one, two thousand and twenty three [Member]."
       }
      }
     },
     "auth_ref": []
    },
    "trex_ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Products Sold Prior to January One, Two Thousand and Twenty Three [Member]",
        "documentation": "Products sold prior to\u00a0january\u00a0one, two thousand and twenty three {Member]."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProfitLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ProfitLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 11.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "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": [
      "r98",
      "r114",
      "r116",
      "r124",
      "r132",
      "r146",
      "r155",
      "r158",
      "r159",
      "r208",
      "r273",
      "r274",
      "r275",
      "r276",
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r408",
      "r417",
      "r418",
      "r421",
      "r422",
      "r449",
      "r453",
      "r502",
      "r513",
      "r552",
      "r595",
      "r611",
      "r612",
      "r668",
      "r669",
      "r692",
      "r797",
      "r845"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "PropertyPlantAndEquipmentNet",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property, plant and equipment, net",
        "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": [
      "r4",
      "r476",
      "r503",
      "r511",
      "r677"
     ]
    },
    "ecd_PvpTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PvpTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pay vs Performance Disclosure [Table]",
        "terseLabel": "Pay vs Performance Disclosure"
       }
      }
     },
     "auth_ref": [
      "r731"
     ]
    },
    "ecd_PvpTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "PvpTableTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pay vs Performance [Table Text Block]",
        "terseLabel": "Pay vs Performance Disclosure, Table"
       }
      }
     },
     "auth_ref": [
      "r731"
     ]
    },
    "srt_RangeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "RangeAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/LeasesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Range [Axis]",
        "label": "Statistical Measurement [Axis]"
       }
      }
     },
     "auth_ref": [
      "r262",
      "r263",
      "r264",
      "r265",
      "r335",
      "r336",
      "r365",
      "r366",
      "r367",
      "r374",
      "r450",
      "r486",
      "r487",
      "r488",
      "r527",
      "r528",
      "r541",
      "r565",
      "r566",
      "r618",
      "r619",
      "r620",
      "r621",
      "r622",
      "r630",
      "r631",
      "r653",
      "r662",
      "r664",
      "r671",
      "r672",
      "r673",
      "r674",
      "r679",
      "r685",
      "r835",
      "r847",
      "r881",
      "r891",
      "r892",
      "r893",
      "r894",
      "r895"
     ]
    },
    "srt_RangeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "RangeMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/LeasesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Range [Domain]",
        "label": "Statistical Measurement [Domain]"
       }
      }
     },
     "auth_ref": [
      "r262",
      "r263",
      "r264",
      "r265",
      "r335",
      "r336",
      "r365",
      "r366",
      "r367",
      "r374",
      "r450",
      "r486",
      "r487",
      "r488",
      "r527",
      "r528",
      "r541",
      "r565",
      "r566",
      "r618",
      "r619",
      "r620",
      "r621",
      "r622",
      "r630",
      "r631",
      "r653",
      "r662",
      "r664",
      "r671",
      "r672",
      "r673",
      "r674",
      "r679",
      "r685",
      "r835",
      "r847",
      "r881",
      "r891",
      "r892",
      "r893",
      "r894",
      "r895"
     ]
    },
    "ecd_RecoveryOfErrCompDisclosureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "RecoveryOfErrCompDisclosureLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]",
        "terseLabel": "Recovery of Erroneously Awarded Compensation Disclosure"
       }
      }
     },
     "auth_ref": [
      "r699",
      "r709",
      "r719",
      "r751"
     ]
    },
    "us-gaap_RepaymentsOfLinesOfCredit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RepaymentsOfLinesOfCredit",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Principal payments under line of credit",
        "label": "Repayments of Lines of Credit",
        "documentation": "Amount of cash outflow for payment of an obligation from a lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements."
       }
      }
     },
     "auth_ref": [
      "r54",
      "r800"
     ]
    },
    "us-gaap_ReportingUnitAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ReportingUnitAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Reporting Unit [Axis]",
        "documentation": "Information by reporting unit."
       }
      }
     },
     "auth_ref": [
      "r238",
      "r239",
      "r655"
     ]
    },
    "us-gaap_ReportingUnitDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ReportingUnitDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Reporting Unit [Domain]",
        "documentation": "Level of reporting at which goodwill is tested for impairment."
       }
      }
     },
     "auth_ref": [
      "r238",
      "r239",
      "r655"
     ]
    },
    "trex_ResidentialAndCommercialUseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "ResidentialAndCommercialUseMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Residential and Commercial Use [Member]",
        "documentation": "Residential and commercial use member."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ResidentialPortfolioSegmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ResidentialPortfolioSegmentMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Residential [Member]",
        "label": "Residential Portfolio Segment [Member]",
        "documentation": "Portfolio segment of the company's total financing receivables related to residential financing receivables."
       }
      }
     },
     "auth_ref": []
    },
    "trex_ResidentialUseMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "ResidentialUseMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Residential Use [Member]",
        "label": "Residential Use [Member]",
        "documentation": "Residential use."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_RestatementDateAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "RestatementDateAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restatement Determination Date [Axis]",
        "terseLabel": "Restatement Determination Date:"
       }
      }
     },
     "auth_ref": [
      "r700",
      "r710",
      "r720",
      "r752"
     ]
    },
    "ecd_RestatementDeterminationDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "RestatementDeterminationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restatement Determination Date",
        "terseLabel": "Restatement Determination Date"
       }
      }
     },
     "auth_ref": [
      "r701",
      "r711",
      "r721",
      "r753"
     ]
    },
    "ecd_RestatementDoesNotRequireRecoveryTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "RestatementDoesNotRequireRecoveryTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Restatement Does Not Require Recovery [Text Block]",
        "terseLabel": "Restatement does not require Recovery"
       }
      }
     },
     "auth_ref": [
      "r708",
      "r718",
      "r728",
      "r760"
     ]
    },
    "us-gaap_RestrictedStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RestrictedStockMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetail",
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Restricted stock [Member]",
        "label": "Restricted Stock [Member]",
        "documentation": "Stock including a provision that prohibits sale or substantive sale of an equity instrument for a specified period of time or until specified performance conditions are met."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RetainedEarningsAccumulatedDeficit",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Retained earnings",
        "label": "Retained Earnings (Accumulated Deficit)",
        "documentation": "Amount of accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r37",
      "r62",
      "r509",
      "r535",
      "r540",
      "r550",
      "r576",
      "r677"
     ]
    },
    "us-gaap_RetainedEarningsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RetainedEarningsMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Retained Earnings [Member]",
        "label": "Retained Earnings [Member]",
        "documentation": "Accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r94",
      "r140",
      "r141",
      "r142",
      "r147",
      "r155",
      "r157",
      "r159",
      "r213",
      "r221",
      "r253",
      "r390",
      "r391",
      "r403",
      "r404",
      "r405",
      "r409",
      "r416",
      "r417",
      "r428",
      "r431",
      "r432",
      "r436",
      "r447",
      "r462",
      "r465",
      "r531",
      "r533",
      "r553",
      "r927"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromContractWithCustomerAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue from Contract with Customer [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0,
       "order": 0.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome",
      "http://www.trex.com/20250331/taxonomy/role/RevenueFromContractsWithCustomersAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net sales",
        "label": "Revenue from Contract with Customer, Excluding Assessed Tax",
        "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise."
       }
      }
     },
     "auth_ref": [
      "r74",
      "r75",
      "r176",
      "r186",
      "r187",
      "r194",
      "r198",
      "r201",
      "r203",
      "r204",
      "r332",
      "r333",
      "r489"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/RevenueFromContractsWithCustomers"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenue From Contracts With Customers",
        "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": [
      "r86",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r334"
     ]
    },
    "trex_RevolvingALoansMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "RevolvingALoansMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revolving A Loans [Member]",
        "documentation": "Revolving A loans.",
        "terseLabel": "Revolving A Loan [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "trex_RevolvingBLoanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "RevolvingBLoanMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revolving B Loan [Member]",
        "label": "Revolving B Loan [Member]",
        "documentation": "Revolving b loan."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevolvingCreditFacilityMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RevolvingCreditFacilityMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revolving Credit Facility [Member]",
        "label": "Revolving Credit Facility [Member]",
        "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability",
     "crdr": "debit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Operating ROU assets obtained in exchange for lease liabilities",
        "label": "Right-of-Use Asset Obtained in Exchange for Operating Lease Liability",
        "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability."
       }
      }
     },
     "auth_ref": [
      "r472",
      "r676"
     ]
    },
    "trex_Rule10B51ArrModifiedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "Rule10B51ArrModifiedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule10b51 Arr Modified Flag",
        "documentation": "Rule10b51 arr modified flag.",
        "terseLabel": "Rule 10b5-1 Arrangement Modified"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_Rule10b51ArrAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "Rule10b51ArrAdoptedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 10b5-1 Arrangement Adopted [Flag]",
        "terseLabel": "Rule 10b5-1 Arrangement Adopted"
       }
      }
     },
     "auth_ref": [
      "r769"
     ]
    },
    "ecd_Rule10b51ArrTrmntdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "Rule10b51ArrTrmntdFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Rule 10b5-1 Arrangement Terminated [Flag]",
        "terseLabel": "Rule 10b5-1 Arrangement Terminated"
       }
      }
     },
     "auth_ref": [
      "r769"
     ]
    },
    "trex_ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/AccruedExpensesAndOtherLiabilitiesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Accrued Expenses and Other Liabilities",
        "label": "Schedule of Accrued Liabilities and Other Current Liabilities [Table Text Block]",
        "documentation": "Tabular disclosure of the components of accrued liabilities and other current liabilities."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]",
        "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]",
        "documentation": "Disclosure of information about security that could potentially dilute basic earnings per share (EPS) in future that was not included in calculation of diluted EPS."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Antidilutive Securities Excluded from Computation of Earnings Per Share",
        "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block]",
        "documentation": "Tabular disclosure of securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by antidilutive securities."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "trex_ScheduleOfCommitmentsAndContingenciesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "ScheduleOfCommitmentsAndContingenciesLineItems",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule Of Commitments And Contingencies [Line Items]",
        "label": "Schedule Of Commitments And Contingencies [Line Items]",
        "documentation": "Schedule of commitments and contingencies."
       }
      }
     },
     "auth_ref": []
    },
    "trex_ScheduleOfCommitmentsAndContingenciesTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "ScheduleOfCommitmentsAndContingenciesTable",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule Of Commitments And Contingencies [Table]",
        "label": "Schedule Of Commitments And Contingencies [Table]",
        "documentation": "Schedule Of Commitments And Contingencies [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Stock-Based Compensation Expense",
        "label": "Schedule of Compensation Cost for Share-based Payment Arrangements, Allocation of Share-based Compensation Costs by Plan [Table Text Block]",
        "documentation": "Tabular disclosure of cost recognized for award under share-based payment arrangement by plan. Includes, but is not limited to, related tax benefit."
       }
      }
     },
     "auth_ref": [
      "r20"
     ]
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Computation of Basic and Diluted Earnings Per Share",
        "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]",
        "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations."
       }
      }
     },
     "auth_ref": [
      "r809"
     ]
    },
    "us-gaap_ScheduleOfGoodwillTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfGoodwillTable",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Goodwill [Table]",
        "label": "Schedule of Goodwill [Table]",
        "documentation": "Disclosure of information about goodwill, including, but not limited to, change from acquisition, sale, impairment, and other reason."
       }
      }
     },
     "auth_ref": [
      "r229",
      "r230",
      "r231",
      "r232",
      "r233",
      "r234",
      "r235",
      "r236",
      "r237",
      "r238",
      "r239",
      "r655"
     ]
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/InventoriesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Inventories",
        "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": [
      "r8",
      "r41",
      "r42",
      "r43"
     ]
    },
    "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Reconciliation of Company's Residential Product Warranty Reserve",
        "label": "Schedule of Product Warranty Liability [Table Text Block]",
        "documentation": "Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability."
       }
      }
     },
     "auth_ref": [
      "r270"
     ]
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DisclosureStockbasedCompensationSummaryOfStockbasedCompensationExpensesParentheticalDetails",
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationExpensesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]",
        "label": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]",
        "documentation": "Disclosure of information about share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r338",
      "r339",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r361",
      "r362",
      "r364",
      "r365",
      "r366",
      "r367",
      "r368"
     ]
    },
    "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Assumptions Used to Estimate Fair Value of Each SAR",
        "label": "Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]",
        "documentation": "Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions."
       }
      }
     },
     "auth_ref": [
      "r63"
     ]
    },
    "trex_SeasonalityDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "SeasonalityDisclosureTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/Seasonality"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Seasonality",
        "label": "Seasonality Disclosure [Text Block]",
        "documentation": "Identifies seasonal trends affecting the demand for Trex products and quarterly net sales."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]",
        "label": "Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]",
        "documentation": "Fixed rate on U.S. dollar, constant-notional interest rate swap that has its variable-rate leg referenced to Secured Overnight Financing Rate (SOFR) with no additional spread over SOFR on variable-rate leg."
       }
      }
     },
     "auth_ref": [
      "r879"
     ]
    },
    "dei_Security12bTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "Security12bTitle",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of 12(b) Security",
        "documentation": "Title of a 12(b) registered security."
       }
      }
     },
     "auth_ref": [
      "r694"
     ]
    },
    "dei_SecurityExchangeName": {
     "xbrltype": "edgarExchangeCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "SecurityExchangeName",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security Exchange Name",
        "documentation": "Name of the Exchange on which a security is registered."
       }
      }
     },
     "auth_ref": [
      "r696"
     ]
    },
    "us-gaap_SegmentReportingAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SegmentReportingAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration": {
     "xbrltype": "enumerationSetItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DisclosureSegmentInformationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting, CODM, Individual Title and Position or Group Name [Extensible Enumeration]",
        "documentation": "Indicates title and position of individual or name of group identified as chief operating decision maker (CODM) for segment reporting."
       }
      }
     },
     "auth_ref": [
      "r184",
      "r645",
      "r652"
     ]
    },
    "us-gaap_SegmentReportingCodmProfitLossMeasureHowUsedDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SegmentReportingCodmProfitLossMeasureHowUsedDescription",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DisclosureSegmentInformationAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment Reporting, CODM, Profit (Loss) Measure, How Used, Description",
        "terseLabel": "Segment reporting CODM profit loss measure how used description",
        "documentation": "Description of how chief operating decision maker (CODM) uses reported segment profit (loss) measure to assess performance and allocate resource."
       }
      }
     },
     "auth_ref": [
      "r193",
      "r642",
      "r649"
     ]
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SegmentReportingDisclosureTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DisclosureSegmentInformation"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Segment Information",
        "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": [
      "r77",
      "r176",
      "r180",
      "r181",
      "r182",
      "r183",
      "r185",
      "r190",
      "r191",
      "r192",
      "r196",
      "r197",
      "r198",
      "r199",
      "r200",
      "r201",
      "r202",
      "r204",
      "r641",
      "r643",
      "r644",
      "r646",
      "r648",
      "r650",
      "r651"
     ]
    },
    "trex_SelectDeckingAndUniversalFasciaMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "SelectDeckingAndUniversalFasciaMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Select Decking And Universal Fascia [Member]",
        "documentation": "Select decking and universal fascia."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SellingGeneralAndAdministrativeExpense",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome": {
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Selling, general and administrative expenses",
        "label": "Selling, General and Administrative Expense",
        "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc."
       }
      }
     },
     "auth_ref": [
      "r50"
     ]
    },
    "trex_SensitivityChangeInSurfaceFlakingWarrantyReserve": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "SensitivityChangeInSurfaceFlakingWarrantyReserve",
     "crdr": "credit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Change in warranty reserve for disclosure purposes only",
        "label": "Sensitivity Change In Surface Flaking Warranty Reserve",
        "documentation": "Estimated change in the warranty reserve resulting from a 10% change in the expected number of remaining claims to be settled with payment or the expected cost to settle claims for disclosure purposes only."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensation",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based compensation",
        "label": "Share-based Compensation",
        "documentation": "Amount of noncash expense for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DisclosureStockbasedCompensationSummaryOfStockbasedCompensationExpensesParentheticalDetails",
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationGrantsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period",
        "terseLabel": "Stock Awards Granted",
        "verboseLabel": "Number of shares or rights issued",
        "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)."
       }
      }
     },
     "auth_ref": [
      "r356"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfAssumptionsUsedToEstimateFairValueOfEachSarDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Weighted-average fair value of grants",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value",
        "documentation": "The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)."
       }
      }
     },
     "auth_ref": [
      "r356"
     ]
    },
    "trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyLineItems",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfAssumptionsUsedToEstimateFairValueOfEachSarDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share Based Compensation Arrangement by Share Based Payment Award Fair Value Assumptions and Methodology [Line Items]",
        "label": "Share Based Compensation Arrangement by Share Based Payment Award Fair Value Assumptions and Methodology [Line Items]",
        "documentation": "Share Based Compensation Arrangement by Share Based Payment Award Fair Value Assumptions and Methodology [Line Items]"
       }
      }
     },
     "auth_ref": []
    },
    "trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsAndMethodologyTable",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfAssumptionsUsedToEstimateFairValueOfEachSarDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions And Methodology [Table]",
        "label": "Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions And Methodology [Table]",
        "documentation": "Share Based Compensation Arrangement By Share Based Payment Award Fair Value Assumptions And Methodology [Table]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfAssumptionsUsedToEstimateFairValueOfEachSarDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Dividend yield",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate",
        "documentation": "The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term."
       }
      }
     },
     "auth_ref": [
      "r366"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfAssumptionsUsedToEstimateFairValueOfEachSarDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Expected volatility",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate",
        "documentation": "The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period."
       }
      }
     },
     "auth_ref": [
      "r365"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfAssumptionsUsedToEstimateFairValueOfEachSarDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Average risk-free interest rate",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate",
        "documentation": "The risk-free interest rate assumption that is used in valuing an option on its own shares."
       }
      }
     },
     "auth_ref": [
      "r367"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DisclosureStockbasedCompensationSummaryOfStockbasedCompensationExpensesParentheticalDetails",
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationExpensesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r338",
      "r339",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r361",
      "r362",
      "r364",
      "r365",
      "r366",
      "r367",
      "r368"
     ]
    },
    "trex_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationGrantsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Weighted-Average Grant Price Per Share",
        "label": "Share Based Compensation Arrangement By Share Based Payment Award Non Options Equity Instruments Granted Weighted Average Grant Price",
        "documentation": "Share based compensation arrangement by share based payment award non options equity instruments granted weighted average grant price."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Total aggregate number of shares of common stock that may be issued",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized",
        "documentation": "Number of shares authorized for issuance under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r666"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Summary of Stock-Based Compensation Grants",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value [Table Text Block]",
        "terseLabel": "Summary of Stock-Based Compensation Grants",
        "documentation": "Tabular disclosure of the weighted-average grant-date fair value of equity options or other equity instruments granted during the year."
       }
      }
     },
     "auth_ref": [
      "r19"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DisclosureStockbasedCompensationSummaryOfStockbasedCompensationExpensesParentheticalDetails",
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfAssumptionsUsedToEstimateFairValueOfEachSarDetail",
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationExpensesDetail",
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationGrantsDetail",
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail",
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "All Award Types",
        "terseLabel": "All Award Types",
        "verboseLabel": "Equity Award [Domain]",
        "documentation": "Award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r360",
      "r361",
      "r362",
      "r364",
      "r365",
      "r366",
      "r367",
      "r368"
     ]
    },
    "us-gaap_ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration": {
     "xbrltype": "enumerationSetItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement, Valuation Technique [Extensible Enumeration]",
        "terseLabel": "Fair value assumptions method used",
        "documentation": "Indicates method used to estimate fair value of award under share-based payment arrangement. Includes, but is not limited to, Black-Scholes-Merton, Monte Carlo, and Binomial models."
       }
      }
     },
     "auth_ref": [
      "r363"
     ]
    },
    "srt_ShareRepurchaseProgramAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ShareRepurchaseProgramAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share Repurchase Program [Axis]",
        "label": "Share Repurchase Program [Axis]"
       }
      }
     },
     "auth_ref": [
      "r848"
     ]
    },
    "srt_ShareRepurchaseProgramDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2024",
     "localname": "ShareRepurchaseProgramDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Share Repurchase Program [Domain]",
        "label": "Share Repurchase Program [Domain]"
       }
      }
     },
     "auth_ref": [
      "r848"
     ]
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfAssumptionsUsedToEstimateFairValueOfEachSarDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Expected term (years)",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Term",
        "documentation": "Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": [
      "r364"
     ]
    },
    "us-gaap_SharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharesIssued",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Beginning Balance, Shares",
        "periodEndLabel": "Ending Balance, Shares",
        "label": "Shares, Issued",
        "documentation": "Number of shares of stock issued as of the balance sheet date, including shares that had been issued and were previously outstanding but which are now held in the treasury."
       }
      }
     },
     "auth_ref": [
      "r5"
     ]
    },
    "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Shares withheld for taxes on awards, Shares",
        "label": "Shares Paid for Tax Withholding for Share Based Compensation",
        "documentation": "Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": []
    },
    "trex_SignatureRailingAndTranscendCladdingMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "SignatureRailingAndTranscendCladdingMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Signature Railing And Transcend Cladding [Member]",
        "documentation": "Signature railing and transcend cladding."
       }
      }
     },
     "auth_ref": []
    },
    "trex_SignatureRailingMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "SignatureRailingMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Signature Railing [Member]",
        "documentation": "Signature railing [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SoftwareDevelopmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SoftwareDevelopmentMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/GoodwillAndOtherIntangibleAssetsNetAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Software Development [Member]",
        "terseLabel": "Internal Use Software [Member]",
        "documentation": "Internally developed software for sale, licensing or long-term internal use."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StandardProductWarrantyAccrual": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StandardProductWarrantyAccrual",
     "crdr": "credit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Beginning balance",
        "periodEndLabel": "Ending balance",
        "label": "Standard Product Warranty Accrual",
        "documentation": "Amount as of the balance sheet date of the aggregate standard product warranty liability. Does not include the balance for the extended product warranty liability."
       }
      }
     },
     "auth_ref": [
      "r839",
      "r842"
     ]
    },
    "us-gaap_StandardProductWarrantyAccrualCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StandardProductWarrantyAccrualCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accrued warranty",
        "label": "Standard Product Warranty Accrual, Current",
        "documentation": "Amount as of the balance sheet date of the aggregate standard product warranty liability that is expected to be paid within one year or the normal operating cycle, if longer. Does not include the balance for the extended product warranty liability."
       }
      }
     },
     "auth_ref": [
      "r839",
      "r842"
     ]
    },
    "us-gaap_StandardProductWarrantyAccrualNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StandardProductWarrantyAccrualNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-current accrued warranty",
        "label": "Standard Product Warranty Accrual, Noncurrent",
        "documentation": "Amount as of the balance sheet date of the aggregate standard product warranty liability that is expected to be paid after one year or beyond the normal operating cycle, if longer. Does not include the balance for the extended product warranty liability."
       }
      }
     },
     "auth_ref": [
      "r839",
      "r842"
     ]
    },
    "us-gaap_StandardProductWarrantyAccrualPayments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StandardProductWarrantyAccrualPayments",
     "crdr": "debit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Settlements made during the period",
        "label": "Standard Product Warranty Accrual, Decrease for Payments",
        "documentation": "Amount of decrease in the standard product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard product warranty. Excludes extended product warranties."
       }
      }
     },
     "auth_ref": [
      "r840"
     ]
    },
    "us-gaap_StandardProductWarrantyAccrualPreexistingIncreaseDecrease": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StandardProductWarrantyAccrualPreexistingIncreaseDecrease",
     "crdr": "credit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Provisions and changes in estimates",
        "label": "Standard Product Warranty Accrual, Increase (Decrease) for Preexisting Warranties",
        "documentation": "Amount of increase (decrease) in the standard product warranty accrual from changes in estimates attributable to preexisting product warranties. Excludes extended product warranties."
       }
      }
     },
     "auth_ref": [
      "r841"
     ]
    },
    "us-gaap_StatementClassOfStockAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementClassOfStockAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail",
      "http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Class of Stock [Axis]",
        "documentation": "Information by the different classes of stock of the entity."
       }
      }
     },
     "auth_ref": [
      "r87",
      "r107",
      "r108",
      "r109",
      "r132",
      "r165",
      "r169",
      "r171",
      "r173",
      "r178",
      "r179",
      "r208",
      "r273",
      "r275",
      "r276",
      "r277",
      "r280",
      "r281",
      "r310",
      "r311",
      "r313",
      "r316",
      "r322",
      "r453",
      "r546",
      "r547",
      "r548",
      "r549",
      "r553",
      "r554",
      "r555",
      "r556",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r575",
      "r596",
      "r613",
      "r623",
      "r624",
      "r625",
      "r626",
      "r627",
      "r780",
      "r799",
      "r808"
     ]
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementEquityComponentsAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity",
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity Components [Axis]",
        "label": "Equity Components [Axis]",
        "documentation": "Information by component of equity."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r35",
      "r38",
      "r39",
      "r94",
      "r118",
      "r119",
      "r120",
      "r140",
      "r141",
      "r142",
      "r147",
      "r155",
      "r157",
      "r159",
      "r177",
      "r213",
      "r221",
      "r253",
      "r323",
      "r390",
      "r391",
      "r403",
      "r404",
      "r405",
      "r409",
      "r416",
      "r417",
      "r428",
      "r430",
      "r431",
      "r432",
      "r433",
      "r436",
      "r447",
      "r454",
      "r455",
      "r456",
      "r457",
      "r458",
      "r459",
      "r462",
      "r465",
      "r483",
      "r515",
      "r531",
      "r532",
      "r533",
      "r553",
      "r613"
     ]
    },
    "us-gaap_StatementLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementLineItems",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity",
      "http://www.trex.com/20250331/taxonomy/role/LeasesAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail",
      "http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail",
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationGrantsDetail"
     ],
     "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": [
      "r140",
      "r141",
      "r142",
      "r177",
      "r465",
      "r489",
      "r545",
      "r564",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r575",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582",
      "r583",
      "r584",
      "r585",
      "r586",
      "r588",
      "r589",
      "r590",
      "r591",
      "r592",
      "r594",
      "r597",
      "r598",
      "r599",
      "r600",
      "r601",
      "r602",
      "r603",
      "r604",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r613",
      "r686"
     ]
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfCashFlowsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfFinancialPositionAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementOfStockholdersEquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StatementTable",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity",
      "http://www.trex.com/20250331/taxonomy/role/LeasesAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/LeasesMaturitiesOfOperatingLeaseLiabilitiesDetail",
      "http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail",
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationGrantsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Statement [Table]",
        "label": "Statement [Table]",
        "documentation": "Disclosure of information about statement of comprehensive income, income, other comprehensive income, financial position, cash flows, and shareholders' equity."
       }
      }
     },
     "auth_ref": [
      "r140",
      "r141",
      "r142",
      "r177",
      "r207",
      "r465",
      "r489",
      "r545",
      "r564",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r575",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582",
      "r583",
      "r584",
      "r585",
      "r586",
      "r588",
      "r589",
      "r590",
      "r591",
      "r592",
      "r594",
      "r597",
      "r598",
      "r599",
      "r600",
      "r601",
      "r602",
      "r603",
      "r604",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r613",
      "r686"
     ]
    },
    "ecd_StkPrcOrTsrEstimationMethodTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "StkPrcOrTsrEstimationMethodTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Price or TSR Estimation Method [Text Block]",
        "terseLabel": "Stock Price or TSR Estimation Method"
       }
      }
     },
     "auth_ref": [
      "r703",
      "r713",
      "r723",
      "r755"
     ]
    },
    "trex_StockAppreciationRightsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "StockAppreciationRightsMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Stock appreciation rights [Member]",
        "label": "Stock Appreciation Rights [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockAppreciationRightsSARSMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockAppreciationRightsSARSMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DisclosureStockbasedCompensationSummaryOfStockbasedCompensationExpensesParentheticalDetails",
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfAssumptionsUsedToEstimateFairValueOfEachSarDetail",
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationExpensesDetail",
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationGrantsDetail",
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareDetail",
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Appreciation Rights (SARs) [Member]",
        "terseLabel": "Stock Appreciation Rights (SARs)",
        "verboseLabel": "Stock appreciation rights [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_StockIssuedDuringPeriodSharesShareBasedCompensation": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Employee stock plans, Shares",
        "label": "Stock Issued During Period, Shares, Share-based Compensation, Net of Forfeitures",
        "documentation": "Number, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP)."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r34",
      "r35",
      "r62"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensationGross": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodSharesShareBasedCompensationGross",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based compensation, Shares",
        "label": "Stock Issued During Period, Shares, Share-based Compensation, Gross",
        "documentation": "Number, before forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodValueShareBasedCompensation",
     "crdr": "credit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Employee stock plans",
        "label": "Stock Issued During Period, Value, Share-based Compensation, Net of Forfeitures",
        "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP)."
       }
      }
     },
     "auth_ref": [
      "r19",
      "r34",
      "r35",
      "r62"
     ]
    },
    "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockIssuedDuringPeriodValueShareBasedCompensationGross",
     "crdr": "credit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock-based compensation",
        "label": "Stock Issued During Period, Value, Share-based Compensation, Gross",
        "documentation": "Value, before forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockRepurchasedDuringPeriodShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockRepurchasedDuringPeriodShares",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock repurchased during period, shares",
        "label": "Stock Repurchased During Period, Shares",
        "documentation": "Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r34",
      "r35",
      "r62",
      "r549",
      "r613",
      "r626"
     ]
    },
    "us-gaap_StockRepurchasedDuringPeriodValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockRepurchasedDuringPeriodValue",
     "crdr": "debit",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stock Repurchased During Period, Value",
        "negatedLabel": "Repurchases of common stock",
        "documentation": "Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r34",
      "r35",
      "r62",
      "r553",
      "r613",
      "r626",
      "r692"
     ]
    },
    "us-gaap_StockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets",
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total stockholders' equity",
        "periodStartLabel": "Beginning Balance",
        "periodEndLabel": "Ending Balance",
        "label": "Stockholders' Equity Attributable to Parent",
        "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r35",
      "r38",
      "r39",
      "r58",
      "r577",
      "r593",
      "r614",
      "r615",
      "r677",
      "r693",
      "r801",
      "r817",
      "r883",
      "r927"
     ]
    },
    "us-gaap_StockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockholdersEquityAbstract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stockholders' equity",
        "label": "Stockholders' Equity Attributable to Parent [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockholdersEquityNoteAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockholdersEquityNoteAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' Equity Note [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockholdersEquityNoteDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "StockholdersEquityNoteDisclosureTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stockholders' Equity",
        "label": "Stockholders' Equity Note Disclosure [Text Block]",
        "documentation": "The entire disclosure for equity."
       }
      }
     },
     "auth_ref": [
      "r61",
      "r131",
      "r309",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r323",
      "r437",
      "r616",
      "r617",
      "r628"
     ]
    },
    "trex_SupplementalBalanceSheetInformationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "SupplementalBalanceSheetInformationAbstract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesSupplementalCashFlowInformationToOperatingLeasesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Supplemental balance sheet information",
        "label": "Supplemental balance sheet information [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SupplementalCashFlowInformationAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SupplementalCashFlowInformationAbstract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Supplemental Disclosure:",
        "label": "Supplemental Cash Flow Information [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "trex_SupplementalFinancialInformationOfOperatingLeasesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "SupplementalFinancialInformationOfOperatingLeasesTableTextBlock",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/LeasesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Supplemental Cash Flow information and Supplemental balance sheet information related to operating leases to operating leases",
        "label": "Supplemental Financial Information Of Operating Leases [Table Text Block]",
        "documentation": "Table includes supplemental cash flow information and supplemental balance sheet information related to operating leases"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SupplyCommitmentArrangementMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SupplyCommitmentArrangementMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supply Commitment Arrangement [Domain]",
        "documentation": "This item is intended to be populated, by the entity, with Members identifying each supply commitment about which information required or determined to be disclosed is being provided. If only one such commitment exists, this item may be used to capture such information; if multiple commitments exist, this item is the dimensional default, which will aggregate such information, as appropriate."
       }
      }
     },
     "auth_ref": [
      "r32",
      "r70"
     ]
    },
    "us-gaap_SupplyCommitmentAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "SupplyCommitmentAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Supply Commitment [Axis]",
        "documentation": "Information by arrangements in which the entity has committed resources to supply goods or services to a customer."
       }
      }
     },
     "auth_ref": [
      "r32",
      "r70"
     ]
    },
    "trex_SurfaceFlakingMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "SurfaceFlakingMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Surface Flaking [Member]",
        "label": "Surface Flaking [Member]",
        "documentation": "Surface flaking."
       }
      }
     },
     "auth_ref": []
    },
    "trex_SurfaceFlakingWarrantyReserveMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "SurfaceFlakingWarrantyReserveMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Surface Flaking Warranty Reserve [Member]",
        "label": "Surface Flaking Warranty Reserve [Member]",
        "documentation": "Surface Flaking Warranty Reserve [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "trex_SwinglineLetterOfCreditMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "SwinglineLetterOfCreditMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Swingline Letter Of Credit [Member]",
        "label": "Swingline Letter Of Credit [Member]",
        "documentation": "Swingline letter of credit member.\n."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_TabularListTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TabularListTableTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Tabular List [Table Text Block]",
        "terseLabel": "Tabular List, Table"
       }
      }
     },
     "auth_ref": [
      "r749"
     ]
    },
    "us-gaap_TextBlockAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TextBlockAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Text Block [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "trex_TimeBasedRestrictedStockUnitsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "TimeBasedRestrictedStockUnitsMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationGrantsDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Time Based Restricted Stock Units [Member]",
        "label": "Time Based Restricted Stock Units [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "trex_TimeBasedRestrictedStockandRestrictedstockUnitsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "TimeBasedRestrictedStockandRestrictedstockUnitsMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationSummaryOfStockBasedCompensationExpensesDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Time-Based Restricted Stock and Restricted Stock Units [Member]",
        "label": "Time Based Restricted Stock And Restricted Stock Units [Member]",
        "documentation": "Time\u200b based\u200b restricted\u200b stock \u200band\u200b restricted \u200bstock\u200b units."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_TotalShareholderRtnAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TotalShareholderRtnAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Shareholder Return Amount",
        "terseLabel": "Total Shareholder Return Amount"
       }
      }
     },
     "auth_ref": [
      "r741"
     ]
    },
    "ecd_TotalShareholderRtnVsPeerGroupTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TotalShareholderRtnVsPeerGroupTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Total Shareholder Return Vs Peer Group [Text Block]",
        "terseLabel": "Total Shareholder Return Vs Peer Group"
       }
      }
     },
     "auth_ref": [
      "r748"
     ]
    },
    "ecd_TradingArrAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TradingArrAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement [Axis]",
        "terseLabel": "Trading Arrangement:"
       }
      }
     },
     "auth_ref": [
      "r768"
     ]
    },
    "ecd_TradingArrByIndTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TradingArrByIndTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangements, by Individual [Table]",
        "terseLabel": "Trading Arrangements, by Individual"
       }
      }
     },
     "auth_ref": [
      "r770"
     ]
    },
    "dei_TradingSymbol": {
     "xbrltype": "tradingSymbolItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2024",
     "localname": "TradingSymbol",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Symbol",
        "documentation": "Trading symbol of an instrument as listed on an exchange."
       }
      }
     },
     "auth_ref": []
    },
    "trex_TranscendDeckingMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "TranscendDeckingMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Transcend Decking [Member]",
        "documentation": "Transcend decking."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_TrdArrAdoptionDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrAdoptionDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Adoption Date",
        "terseLabel": "Adoption Date"
       }
      }
     },
     "auth_ref": [
      "r771"
     ]
    },
    "ecd_TrdArrDuration": {
     "xbrltype": "durationItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrDuration",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Duration",
        "terseLabel": "Arrangement Duration"
       }
      }
     },
     "auth_ref": [
      "r772"
     ]
    },
    "ecd_TrdArrExpirationDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrExpirationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Expiration Date",
        "terseLabel": "Expiration Date"
       }
      }
     },
     "auth_ref": [
      "r772"
     ]
    },
    "ecd_TrdArrIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement, Individual Name",
        "terseLabel": "Name"
       }
      }
     },
     "auth_ref": [
      "r770"
     ]
    },
    "ecd_TrdArrIndTitle": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrIndTitle",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement, Individual Title",
        "terseLabel": "Title"
       }
      }
     },
     "auth_ref": [
      "r770"
     ]
    },
    "ecd_TrdArrSecuritiesAggAvailAmt": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrSecuritiesAggAvailAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement, Securities Aggregate Available Amount",
        "terseLabel": "Aggregate Available"
       }
      }
     },
     "auth_ref": [
      "r773"
     ]
    },
    "ecd_TrdArrTerminationDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "TrdArrTerminationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Arrangement Termination Date",
        "terseLabel": "Termination Date"
       }
      }
     },
     "auth_ref": [
      "r771"
     ]
    },
    "us-gaap_TreasuryStockCommonMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockCommonMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Treasury Stock [Member]",
        "label": "Treasury Stock, Common [Member]",
        "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury."
       }
      }
     },
     "auth_ref": [
      "r15"
     ]
    },
    "us-gaap_TreasuryStockCommonShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockCommonShares",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheetsParenthetical",
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Treasury stock, shares",
        "label": "Treasury Stock, Common, Shares",
        "periodStartLabel": "Beginning Balance, Treasury Stock, Shares",
        "periodEndLabel": "Ending Balance, Treasury Stock, Shares",
        "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury."
       }
      }
     },
     "auth_ref": [
      "r15"
     ]
    },
    "us-gaap_TreasuryStockSharesAcquired": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockSharesAcquired",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfChangesInStockholdersEquity",
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of shares repurchased by the Company",
        "label": "Treasury Stock, Shares, Acquired",
        "negatedLabel": "Repurchases of common stock, Shares",
        "documentation": "Number of shares that have been repurchased during the period and are being held in treasury."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r35",
      "r62"
     ]
    },
    "us-gaap_TreasuryStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "TreasuryStockValue",
     "crdr": "debit",
     "calculation": {
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Treasury Stock, Value",
        "negatedLabel": "Treasury stock, at cost, 33,943,946 and 33,943,946 shares at March 31, 2025 and December 31, 2024",
        "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": [
      "r15",
      "r18",
      "r35",
      "r38"
     ]
    },
    "trex_TwoThousandEighteenStockRepurchaseProgramMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "TwoThousandEighteenStockRepurchaseProgramMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "2018 Stock Repurchase Program [Member]",
        "label": "Two Thousand Eighteen Stock Repurchase Program [Member]",
        "documentation": "Two thousand eighteen stock repurchase program."
       }
      }
     },
     "auth_ref": []
    },
    "trex_TwoThousandFourteenStockIncentivePlanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "TwoThousandFourteenStockIncentivePlanMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockBasedCompensationAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2014 Stock Incentive Plan [Member]",
        "label": "Two Thousand Fourteen Stock Incentive Plan [Member]",
        "documentation": "Two Thousand Fourteen Stock Incentive Plan [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "trex_TwoThousandTwentyThreeStockRepurchaseProgramMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "TwoThousandTwentyThreeStockRepurchaseProgramMember",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "2023 Stock Repurchase Program [Member]",
        "label": "Two Thousand Twenty Three Stock Repurchase Program [Member]",
        "documentation": "2023 stock repurchase program member."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_UndrlygSecurityMktPriceChngPct": {
     "xbrltype": "pureItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "UndrlygSecurityMktPriceChngPct",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Underlying Security Market Price Change, Percent",
        "terseLabel": "Underlying Security Market Price Change"
       }
      }
     },
     "auth_ref": [
      "r767"
     ]
    },
    "us-gaap_ValuationAllowancesAndReservesDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ValuationAllowancesAndReservesDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "SEC Schedule, 12-09, Valuation Allowances and Reserves [Domain]",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves [Domain]",
        "documentation": "Valuation and qualifying accounts and reserves."
       }
      }
     },
     "auth_ref": [
      "r135",
      "r136",
      "r137",
      "r138",
      "r139"
     ]
    },
    "us-gaap_ValuationAllowancesAndReservesTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "ValuationAllowancesAndReservesTypeAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail",
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesSummaryOfReconciliationOfCompanysResidentialProductWarrantyReserveDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "SEC Schedule, 12-09, Valuation Allowances and Reserves Type [Axis]",
        "label": "SEC Schedule, 12-09, Valuation Allowances and Reserves Type [Axis]",
        "documentation": "Information by valuation and qualifying accounts and reserves."
       }
      }
     },
     "auth_ref": [
      "r135",
      "r136",
      "r137",
      "r138",
      "r139"
     ]
    },
    "us-gaap_VariableRateAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VariableRateAxis",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Variable Rate [Axis]",
        "terseLabel": "Variable Rate [Axis]",
        "documentation": "Information by type of variable rate."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_VariableRateDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "VariableRateDomain",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/DebtAdditionalInformationDetail"
     ],
     "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": []
    },
    "ecd_VstngDtFrValOfEqtyAwrdsGrntdAndVstdInCvrdYrMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "VstngDtFrValOfEqtyAwrdsGrntdAndVstdInCvrdYrMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year [Member]",
        "terseLabel": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year"
       }
      }
     },
     "auth_ref": [
      "r737"
     ]
    },
    "trex_WarrantyPeriod": {
     "xbrltype": "durationItemType",
     "nsuri": "http://www.trex.com/20250331",
     "localname": "WarrantyPeriod",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CommitmentsAndContingenciesAdditionalInformationDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Warranty period",
        "label": "Warranty Period",
        "documentation": "The number of years the Company warrants that its products will be free from material defects in workmanship and materials."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Effect of dilutive securities:",
        "label": "Incremental Weighted Average Shares Attributable to Dilutive Effect [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome",
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Diluted weighted average shares outstanding",
        "terseLabel": "Diluted weighted average common shares outstanding",
        "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": [
      "r164",
      "r173"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/CondensedConsolidatedStatementsOfComprehensiveIncome",
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding, Basic",
        "terseLabel": "Basic weighted average shares outstanding",
        "verboseLabel": "Basic weighted average common shares outstanding",
        "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period."
       }
      }
     },
     "auth_ref": [
      "r163",
      "r173"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2024",
     "localname": "WeightedAverageNumberOfSharesOutstandingBasicAbstract",
     "presentation": [
      "http://www.trex.com/20250331/taxonomy/role/StockholdersEquityComputationOfBasicAndDilutedEarningsPerShareDetail"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Denominator:",
        "label": "Weighted Average Number of Shares Outstanding, Basic [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_YrEndFrValOfEqtyAwrdsGrntdInCvrdYrOutsdngAndUnvstdMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2024",
     "localname": "YrEndFrValOfEqtyAwrdsGrntdInCvrdYrOutsdngAndUnvstdMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested [Member]",
        "terseLabel": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested"
       }
      }
     },
     "auth_ref": [
      "r735"
     ]
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "SubTopic": "230",
   "Topic": "830",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1"
  },
  "r1": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "14",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14"
  },
  "r2": {
   "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"
  },
  "r3": {
   "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"
  },
  "r4": {
   "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"
  },
  "r5": {
   "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"
  },
  "r6": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2A",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "718",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2A"
  },
  "r7": {
   "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"
  },
  "r8": {
   "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"
  },
  "r9": {
   "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"
  },
  "r10": {
   "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"
  },
  "r11": {
   "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"
  },
  "r12": {
   "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"
  },
  "r13": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "250",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r14": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "260",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1"
  },
  "r15": {
   "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"
  },
  "r16": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-2"
  },
  "r17": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-3"
  },
  "r18": {
   "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"
  },
  "r19": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r20": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r21": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "805",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "14",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-14"
  },
  "r22": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/205/tableOfContent"
  },
  "r23": {
   "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)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r24": {
   "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)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r25": {
   "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"
  },
  "r26": {
   "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"
  },
  "r27": {
   "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(21))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r28": {
   "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(22)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r29": {
   "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(22)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r30": {
   "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"
  },
  "r31": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r32": {
   "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(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r33": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(26))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r34": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(28))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r35": {
   "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"
  },
  "r36": {
   "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"
  },
  "r37": {
   "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"
  },
  "r38": {
   "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"
  },
  "r39": {
   "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"
  },
  "r40": {
   "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"
  },
  "r41": {
   "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"
  },
  "r42": {
   "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"
  },
  "r43": {
   "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"
  },
  "r44": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r45": {
   "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"
  },
  "r46": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r47": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(2)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r48": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2"
  },
  "r49": {
   "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"
  },
  "r50": {
   "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"
  },
  "r51": {
   "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"
  },
  "r52": {
   "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"
  },
  "r53": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15"
  },
  "r54": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15"
  },
  "r55": {
   "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"
  },
  "r56": {
   "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"
  },
  "r57": {
   "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"
  },
  "r58": {
   "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"
  },
  "r59": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "440",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/440/tableOfContent"
  },
  "r60": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "470",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/470/tableOfContent"
  },
  "r61": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/505/tableOfContent"
  },
  "r62": {
   "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"
  },
  "r63": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "718",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Section": "50",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r64": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "810",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/810/tableOfContent"
  },
  "r65": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r66": {
   "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/2147478546/942-210-S99-1"
  },
  "r67": {
   "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/2147478546/942-210-S99-1"
  },
  "r68": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(15)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r69": {
   "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/2147478546/942-210-S99-1"
  },
  "r70": {
   "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(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r71": {
   "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/2147478546/942-210-S99-1"
  },
  "r72": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r73": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r74": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "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"
  },
  "r75": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "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"
  },
  "r76": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "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"
  },
  "r77": {
   "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef",
   "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"
  },
  "r78": {
   "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"
  },
  "r79": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-1"
  },
  "r80": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "9",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "740",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-9"
  },
  "r81": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "SubTopic": "10",
   "Topic": "326",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-3"
  },
  "r82": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "326",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-3"
  },
  "r83": {
   "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"
  },
  "r84": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "250",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/250/tableOfContent"
  },
  "r85": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/275/tableOfContent"
  },
  "r86": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/606/tableOfContent"
  },
  "r87": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "a",
   "Publisher": "SEC"
  },
  "r88": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1404",
   "Paragraph": "a",
   "Publisher": "SEC"
  },
  "r89": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1404",
   "Paragraph": "b",
   "Publisher": "SEC"
  },
  "r90": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1405",
   "Paragraph": "a",
   "Subparagraph": "(4)",
   "Publisher": "SEC"
  },
  "r91": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1405",
   "Paragraph": "c",
   "Publisher": "SEC"
  },
  "r92": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-6"
  },
  "r93": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-6"
  },
  "r94": {
   "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"
  },
  "r95": {
   "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"
  },
  "r96": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-6"
  },
  "r97": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-7"
  },
  "r98": {
   "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"
  },
  "r99": {
   "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"
  },
  "r100": {
   "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"
  },
  "r101": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r102": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r103": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(16))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r104": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r105": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r106": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(22)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r107": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(27)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r108": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(28))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r109": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(29))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r110": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r111": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r112": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r113": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r114": {
   "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"
  },
  "r115": {
   "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"
  },
  "r116": {
   "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"
  },
  "r117": {
   "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"
  },
  "r118": {
   "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"
  },
  "r119": {
   "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"
  },
  "r120": {
   "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"
  },
  "r121": {
   "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"
  },
  "r122": {
   "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"
  },
  "r123": {
   "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"
  },
  "r124": {
   "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"
  },
  "r125": {
   "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"
  },
  "r126": {
   "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"
  },
  "r127": {
   "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"
  },
  "r128": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2A"
  },
  "r129": {
   "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"
  },
  "r130": {
   "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"
  },
  "r131": {
   "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(e)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r132": {
   "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"
  },
  "r133": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r134": {
   "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"
  },
  "r135": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "4",
   "Subparagraph": "(SX 210.12-09(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-4"
  },
  "r136": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "4",
   "Subparagraph": "(SX 210.12-09(Column C)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-4"
  },
  "r137": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "4",
   "Subparagraph": "(SX 210.12-09(Column C)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-4"
  },
  "r138": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "4",
   "Subparagraph": "(SX 210.12-09(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-4"
  },
  "r139": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "4",
   "Subparagraph": "(SX 210.12-09(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-4"
  },
  "r140": {
   "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"
  },
  "r141": {
   "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"
  },
  "r142": {
   "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"
  },
  "r143": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-6"
  },
  "r144": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r145": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r146": {
   "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"
  },
  "r147": {
   "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"
  },
  "r148": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r149": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r150": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r151": {
   "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"
  },
  "r152": {
   "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"
  },
  "r153": {
   "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"
  },
  "r154": {
   "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"
  },
  "r155": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6"
  },
  "r156": {
   "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"
  },
  "r157": {
   "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"
  },
  "r158": {
   "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"
  },
  "r159": {
   "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"
  },
  "r160": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480530/250-10-S99-3"
  },
  "r161": {
   "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"
  },
  "r162": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480530/250-10-S99-6"
  },
  "r163": {
   "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"
  },
  "r164": {
   "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"
  },
  "r165": {
   "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"
  },
  "r166": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-22"
  },
  "r167": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "23",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-23"
  },
  "r168": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-28A"
  },
  "r169": {
   "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"
  },
  "r170": {
   "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"
  },
  "r171": {
   "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"
  },
  "r172": {
   "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"
  },
  "r173": {
   "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"
  },
  "r174": {
   "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"
  },
  "r175": {
   "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"
  },
  "r176": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "270",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1"
  },
  "r177": {
   "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"
  },
  "r178": {
   "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"
  },
  "r179": {
   "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"
  },
  "r180": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/280/tableOfContent"
  },
  "r181": {
   "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"
  },
  "r182": {
   "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"
  },
  "r183": {
   "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"
  },
  "r184": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-21"
  },
  "r185": {
   "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"
  },
  "r186": {
   "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"
  },
  "r187": {
   "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"
  },
  "r188": {
   "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"
  },
  "r189": {
   "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"
  },
  "r190": {
   "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"
  },
  "r191": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26B"
  },
  "r192": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26C"
  },
  "r193": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "29",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-29"
  },
  "r194": {
   "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"
  },
  "r195": {
   "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"
  },
  "r196": {
   "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"
  },
  "r197": {
   "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"
  },
  "r198": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(ee)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r199": {
   "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"
  },
  "r200": {
   "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"
  },
  "r201": {
   "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"
  },
  "r202": {
   "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"
  },
  "r203": {
   "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"
  },
  "r204": {
   "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"
  },
  "r205": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476173/280-10-65-1"
  },
  "r206": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476173/280-10-65-1"
  },
  "r207": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-13"
  },
  "r208": {
   "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"
  },
  "r209": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-2"
  },
  "r210": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r211": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r212": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r213": {
   "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"
  },
  "r214": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r215": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "4",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4"
  },
  "r216": {
   "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"
  },
  "r217": {
   "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"
  },
  "r218": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-5"
  },
  "r219": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-5"
  },
  "r220": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-5"
  },
  "r221": {
   "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"
  },
  "r222": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-11"
  },
  "r223": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13"
  },
  "r224": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/330/tableOfContent"
  },
  "r225": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "340",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "05",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482955/340-10-05-5"
  },
  "r226": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "340",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483032/340-10-45-1"
  },
  "r227": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480265/350-10-S45-1"
  },
  "r228": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482598/350-20-45-1"
  },
  "r229": {
   "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"
  },
  "r230": {
   "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"
  },
  "r231": {
   "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"
  },
  "r232": {
   "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"
  },
  "r233": {
   "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"
  },
  "r234": {
   "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"
  },
  "r235": {
   "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"
  },
  "r236": {
   "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"
  },
  "r237": {
   "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"
  },
  "r238": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1A"
  },
  "r239": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-2"
  },
  "r240": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1"
  },
  "r241": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-2"
  },
  "r242": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r243": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r244": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r245": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r246": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r247": {
   "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"
  },
  "r248": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r249": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r250": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r251": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r252": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476166/350-60-65-1"
  },
  "r253": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "350",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476166/350-60-65-1"
  },
  "r254": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r255": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r256": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r257": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r258": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r259": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "405",
   "SubTopic": "50",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477123/405-50-65-1"
  },
  "r260": {
   "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"
  },
  "r261": {
   "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"
  },
  "r262": {
   "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"
  },
  "r263": {
   "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"
  },
  "r264": {
   "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"
  },
  "r265": {
   "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"
  },
  "r266": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-4"
  },
  "r267": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-4"
  },
  "r268": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-4"
  },
  "r269": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-4"
  },
  "r270": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r271": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6"
  },
  "r272": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6"
  },
  "r273": {
   "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"
  },
  "r274": {
   "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"
  },
  "r275": {
   "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"
  },
  "r276": {
   "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"
  },
  "r277": {
   "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"
  },
  "r278": {
   "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"
  },
  "r279": {
   "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"
  },
  "r280": {
   "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"
  },
  "r281": {
   "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"
  },
  "r282": {
   "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"
  },
  "r283": {
   "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"
  },
  "r284": {
   "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"
  },
  "r285": {
   "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"
  },
  "r286": {
   "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"
  },
  "r287": {
   "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"
  },
  "r288": {
   "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"
  },
  "r289": {
   "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"
  },
  "r290": {
   "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"
  },
  "r291": {
   "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"
  },
  "r292": {
   "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"
  },
  "r293": {
   "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"
  },
  "r294": {
   "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"
  },
  "r295": {
   "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"
  },
  "r296": {
   "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"
  },
  "r297": {
   "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"
  },
  "r298": {
   "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"
  },
  "r299": {
   "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"
  },
  "r300": {
   "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"
  },
  "r301": {
   "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"
  },
  "r302": {
   "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"
  },
  "r303": {
   "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"
  },
  "r304": {
   "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"
  },
  "r305": {
   "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"
  },
  "r306": {
   "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"
  },
  "r307": {
   "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"
  },
  "r308": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "470",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-4"
  },
  "r309": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r310": {
   "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"
  },
  "r311": {
   "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"
  },
  "r312": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r313": {
   "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"
  },
  "r314": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13"
  },
  "r315": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-14"
  },
  "r316": {
   "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"
  },
  "r317": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-14"
  },
  "r318": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "16",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-16"
  },
  "r319": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18"
  },
  "r320": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18"
  },
  "r321": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "18",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18"
  },
  "r322": {
   "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"
  },
  "r323": {
   "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"
  },
  "r324": {
   "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"
  },
  "r325": {
   "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"
  },
  "r326": {
   "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"
  },
  "r327": {
   "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"
  },
  "r328": {
   "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"
  },
  "r329": {
   "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"
  },
  "r330": {
   "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"
  },
  "r331": {
   "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"
  },
  "r332": {
   "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"
  },
  "r333": {
   "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"
  },
  "r334": {
   "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"
  },
  "r335": {
   "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"
  },
  "r336": {
   "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"
  },
  "r337": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/718/tableOfContent"
  },
  "r338": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-1D"
  },
  "r339": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-3"
  },
  "r340": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480454/718-10-45-1"
  },
  "r341": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r342": {
   "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"
  },
  "r343": {
   "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"
  },
  "r344": {
   "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"
  },
  "r345": {
   "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"
  },
  "r346": {
   "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"
  },
  "r347": {
   "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"
  },
  "r348": {
   "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"
  },
  "r349": {
   "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"
  },
  "r350": {
   "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"
  },
  "r351": {
   "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"
  },
  "r352": {
   "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"
  },
  "r353": {
   "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"
  },
  "r354": {
   "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"
  },
  "r355": {
   "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"
  },
  "r356": {
   "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"
  },
  "r357": {
   "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"
  },
  "r358": {
   "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"
  },
  "r359": {
   "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"
  },
  "r360": {
   "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"
  },
  "r361": {
   "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"
  },
  "r362": {
   "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"
  },
  "r363": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r364": {
   "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"
  },
  "r365": {
   "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"
  },
  "r366": {
   "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"
  },
  "r367": {
   "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"
  },
  "r368": {
   "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"
  },
  "r369": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(1)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r370": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r371": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(h)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r372": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(l)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r373": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 14.F)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1"
  },
  "r374": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "720",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483359/720-20-50-1"
  },
  "r375": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "720",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483384/720-30-45-1"
  },
  "r376": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/740/tableOfContent"
  },
  "r377": {
   "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"
  },
  "r378": {
   "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"
  },
  "r379": {
   "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"
  },
  "r380": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12"
  },
  "r381": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12B"
  },
  "r382": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12C"
  },
  "r383": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-14"
  },
  "r384": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15"
  },
  "r385": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "17",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-17"
  },
  "r386": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-2"
  },
  "r387": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-21"
  },
  "r388": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-22"
  },
  "r389": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-23"
  },
  "r390": {
   "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"
  },
  "r391": {
   "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"
  },
  "r392": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "9",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-9"
  },
  "r393": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "9",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-9"
  },
  "r394": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "9",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-9"
  },
  "r395": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 6.I.5.Q1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1"
  },
  "r396": {
   "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"
  },
  "r397": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB Topic 11.C)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-2"
  },
  "r398": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "270",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477891/740-270-50-1"
  },
  "r399": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482603/740-30-50-2"
  },
  "r400": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r401": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r402": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r403": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r404": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r405": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r406": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r407": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r408": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r409": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "740",
   "SubTopic": "323",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(g)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2"
  },
  "r410": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479845/805-20-65-3"
  },
  "r411": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479845/805-20-65-3"
  },
  "r412": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "3",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479845/805-20-65-3"
  },
  "r413": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r414": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r415": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r416": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r417": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "805",
   "SubTopic": "60",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1"
  },
  "r418": {
   "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"
  },
  "r419": {
   "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"
  },
  "r420": {
   "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"
  },
  "r421": {
   "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"
  },
  "r422": {
   "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"
  },
  "r423": {
   "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"
  },
  "r424": {
   "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"
  },
  "r425": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "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": "(b)",
   "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": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r428": {
   "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"
  },
  "r429": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r430": {
   "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"
  },
  "r431": {
   "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"
  },
  "r432": {
   "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"
  },
  "r433": {
   "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"
  },
  "r434": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(i)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r435": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(i)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6"
  },
  "r436": {
   "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"
  },
  "r437": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480237/815-40-50-6"
  },
  "r438": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r439": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r440": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r441": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r442": {
   "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"
  },
  "r443": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r444": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r445": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r446": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1"
  },
  "r447": {
   "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"
  },
  "r448": {
   "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"
  },
  "r449": {
   "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"
  },
  "r450": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r451": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "13",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482477/820-10-65-13"
  },
  "r452": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "13",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482477/820-10-65-13"
  },
  "r453": {
   "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"
  },
  "r454": {
   "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"
  },
  "r455": {
   "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"
  },
  "r456": {
   "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"
  },
  "r457": {
   "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"
  },
  "r458": {
   "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"
  },
  "r459": {
   "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"
  },
  "r460": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2"
  },
  "r461": {
   "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"
  },
  "r462": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-8"
  },
  "r463": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "8",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-8"
  },
  "r464": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/842-20/tableOfContent"
  },
  "r465": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "12A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479165/842-20-35-12A"
  },
  "r466": {
   "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"
  },
  "r467": {
   "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"
  },
  "r468": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-2"
  },
  "r469": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-5"
  },
  "r470": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r471": {
   "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"
  },
  "r472": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r473": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r474": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(g)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4"
  },
  "r475": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-6"
  },
  "r476": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-7A"
  },
  "r477": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-1"
  },
  "r478": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "1",
   "Subparagraph": "(e)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-1"
  },
  "r479": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r480": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r481": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r482": {
   "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"
  },
  "r483": {
   "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"
  },
  "r484": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r485": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "848",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2"
  },
  "r486": {
   "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"
  },
  "r487": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "860",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-7"
  },
  "r488": {
   "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"
  },
  "r489": {
   "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"
  },
  "r490": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483154/926-20-50-5"
  },
  "r491": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483194/926-20-65-2"
  },
  "r492": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483194/926-20-65-2"
  },
  "r493": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483194/926-20-65-2"
  },
  "r494": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483194/926-20-65-2"
  },
  "r495": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483194/926-20-65-2"
  },
  "r496": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "926",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(f)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483194/926-20-65-2"
  },
  "r497": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "928",
   "SubTopic": "340",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478859/928-340-50-1"
  },
  "r498": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(10)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1"
  },
  "r499": {
   "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(10))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r500": {
   "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/2147478524/942-220-S99-1"
  },
  "r501": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(27))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1"
  },
  "r502": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-1"
  },
  "r503": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478451/942-360-50-1"
  },
  "r504": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r505": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(15)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r506": {
   "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/2147478777/944-210-S99-1"
  },
  "r507": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(21))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r508": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r509": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r510": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r511": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r512": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r513": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(16))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r514": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r515": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r516": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r517": {
   "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/2147477250/944-220-S99-1"
  },
  "r518": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r519": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1"
  },
  "r520": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r521": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r522": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r523": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r524": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r525": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-17(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2"
  },
  "r526": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4E"
  },
  "r527": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r528": {
   "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"
  },
  "r529": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r530": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2"
  },
  "r531": {
   "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"
  },
  "r532": {
   "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"
  },
  "r533": {
   "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"
  },
  "r534": {
   "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"
  },
  "r535": {
   "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"
  },
  "r536": {
   "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"
  },
  "r537": {
   "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"
  },
  "r538": {
   "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"
  },
  "r539": {
   "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"
  },
  "r540": {
   "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"
  },
  "r541": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SAB Topic 5.W.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479583/944-40-S99-1"
  },
  "r542": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480424/946-10-50-1"
  },
  "r543": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480424/946-10-50-2"
  },
  "r544": {
   "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"
  },
  "r545": {
   "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"
  },
  "r546": {
   "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"
  },
  "r547": {
   "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"
  },
  "r548": {
   "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"
  },
  "r549": {
   "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"
  },
  "r550": {
   "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"
  },
  "r551": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-13"
  },
  "r552": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-3"
  },
  "r553": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4"
  },
  "r554": {
   "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/2147478494/946-205-50-2"
  },
  "r555": {
   "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/2147478494/946-205-50-27"
  },
  "r556": {
   "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/2147478494/946-205-50-7"
  },
  "r557": {
   "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/2147478494/946-205-50-7"
  },
  "r558": {
   "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/2147478494/946-205-50-7"
  },
  "r559": {
   "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/2147478494/946-205-50-7"
  },
  "r560": {
   "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/2147478494/946-205-50-7"
  },
  "r561": {
   "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/2147478494/946-205-50-7"
  },
  "r562": {
   "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/2147478494/946-205-50-7"
  },
  "r563": {
   "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/2147478494/946-205-50-7"
  },
  "r564": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477796/946-210-45-4"
  },
  "r565": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r566": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r567": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r568": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r569": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r570": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r571": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r572": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r573": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r574": {
   "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/2147479170/946-210-S99-1"
  },
  "r575": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(16)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r576": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r577": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r578": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r579": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r580": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r581": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r582": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r583": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r584": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r585": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r586": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r587": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r588": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r589": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r590": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r591": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1"
  },
  "r592": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2"
  },
  "r593": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2"
  },
  "r594": {
   "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/2147479105/946-220-45-3"
  },
  "r595": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-7"
  },
  "r596": {
   "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/2147478297/946-220-50-3"
  },
  "r597": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r598": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r599": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r600": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r601": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r602": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r603": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r604": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r605": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r606": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r607": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r608": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r609": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r610": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r611": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1"
  },
  "r612": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(1)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r613": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r614": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r615": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r616": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477968/946-235-50-2"
  },
  "r617": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477968/946-235-50-2"
  },
  "r618": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r619": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2"
  },
  "r620": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r621": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r622": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r623": {
   "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/2147478448/946-505-50-1"
  },
  "r624": {
   "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/2147478448/946-505-50-2"
  },
  "r625": {
   "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/2147478448/946-505-50-2"
  },
  "r626": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "505",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478448/946-505-50-2"
  },
  "r627": {
   "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/2147478448/946-505-50-2"
  },
  "r628": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "505",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478448/946-505-50-6"
  },
  "r629": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "954",
   "SubTopic": "440",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478522/954-440-50-1"
  },
  "r630": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "976",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477332/976-310-50-1"
  },
  "r631": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "978",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479230/978-310-50-1"
  },
  "r632": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "985",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-2"
  },
  "r633": {
   "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"
  },
  "r634": {
   "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"
  },
  "r635": {
   "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"
  },
  "r636": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1"
  },
  "r637": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483489/210-10-50-1"
  },
  "r638": {
   "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"
  },
  "r639": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r640": {
   "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"
  },
  "r641": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47"
  },
  "r642": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Subparagraph": "(bb)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47"
  },
  "r643": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47"
  },
  "r644": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47"
  },
  "r645": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "47",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47"
  },
  "r646": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "48",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-48"
  },
  "r647": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "49",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-49"
  },
  "r648": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "54",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54"
  },
  "r649": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "54",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54"
  },
  "r650": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "54",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54"
  },
  "r651": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "54",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54"
  },
  "r652": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "54",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54"
  },
  "r653": {
   "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"
  },
  "r654": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "326",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479294/326-20-55-10"
  },
  "r655": {
   "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"
  },
  "r656": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "40",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482640/350-30-55-40"
  },
  "r657": {
   "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"
  },
  "r658": {
   "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"
  },
  "r659": {
   "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"
  },
  "r660": {
   "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"
  },
  "r661": {
   "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"
  },
  "r662": {
   "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"
  },
  "r663": {
   "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"
  },
  "r664": {
   "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"
  },
  "r665": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r666": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "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"
  },
  "r667": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "231",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482663/740-10-55-231"
  },
  "r668": {
   "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"
  },
  "r669": {
   "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"
  },
  "r670": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "100",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100"
  },
  "r671": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "103",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-103"
  },
  "r672": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r673": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r674": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "107",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107"
  },
  "r675": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482949/835-30-55-8"
  },
  "r676": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "53",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479589/842-20-55-53"
  },
  "r677": {
   "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"
  },
  "r678": {
   "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"
  },
  "r679": {
   "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"
  },
  "r680": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9C",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C"
  },
  "r681": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "9E",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9E"
  },
  "r682": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480078/944-80-55-18"
  },
  "r683": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1"
  },
  "r684": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6"
  },
  "r685": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477439/946-210-55-1"
  },
  "r686": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477802/946-310-45-1"
  },
  "r687": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1"
  },
  "r688": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2"
  },
  "r689": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3"
  },
  "r690": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6"
  },
  "r691": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-10"
  },
  "r692": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-11"
  },
  "r693": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-12"
  },
  "r694": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r695": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r696": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r697": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-Q",
   "Number": "240",
   "Section": "308",
   "Subsection": "a"
  },
  "r698": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "16",
   "Subsection": "J",
   "Paragraph": "a"
  },
  "r699": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1"
  },
  "r700": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i"
  },
  "r701": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "A"
  },
  "r702": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "B"
  },
  "r703": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "C"
  },
  "r704": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "D"
  },
  "r705": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "E"
  },
  "r706": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "ii"
  },
  "r707": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "iii"
  },
  "r708": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "2"
  },
  "r709": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a"
  },
  "r710": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1"
  },
  "r711": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "i"
  },
  "r712": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "ii"
  },
  "r713": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iii"
  },
  "r714": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iv"
  },
  "r715": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "v"
  },
  "r716": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "2"
  },
  "r717": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "3"
  },
  "r718": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "b"
  },
  "r719": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a"
  },
  "r720": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1"
  },
  "r721": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "i"
  },
  "r722": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "ii"
  },
  "r723": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iii"
  },
  "r724": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iv"
  },
  "r725": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "v"
  },
  "r726": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "2"
  },
  "r727": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "3"
  },
  "r728": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "b"
  },
  "r729": {
   "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"
  },
  "r730": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v"
  },
  "r731": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "1"
  },
  "r732": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "ii"
  },
  "r733": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii"
  },
  "r734": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "B",
   "Clause": "1",
   "Subclause": "ii"
  },
  "r735": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "i"
  },
  "r736": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "ii"
  },
  "r737": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "iii"
  },
  "r738": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "iv"
  },
  "r739": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "v"
  },
  "r740": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1",
   "Subclause": "vi"
  },
  "r741": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iv"
  },
  "r742": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "vi"
  },
  "r743": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "3"
  },
  "r744": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "4"
  },
  "r745": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "i"
  },
  "r746": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "ii"
  },
  "r747": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "iii"
  },
  "r748": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "iv"
  },
  "r749": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "6"
  },
  "r750": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "6",
   "Subparagraph": "i"
  },
  "r751": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1"
  },
  "r752": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i"
  },
  "r753": {
   "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"
  },
  "r754": {
   "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"
  },
  "r755": {
   "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"
  },
  "r756": {
   "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"
  },
  "r757": {
   "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"
  },
  "r758": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "ii"
  },
  "r759": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "iii"
  },
  "r760": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "2"
  },
  "r761": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "1"
  },
  "r762": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2"
  },
  "r763": {
   "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"
  },
  "r764": {
   "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"
  },
  "r765": {
   "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"
  },
  "r766": {
   "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"
  },
  "r767": {
   "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"
  },
  "r768": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a"
  },
  "r769": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "1"
  },
  "r770": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "A"
  },
  "r771": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "B"
  },
  "r772": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "C"
  },
  "r773": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "D"
  },
  "r774": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "b",
   "Paragraph": "1"
  },
  "r775": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Section": "402",
   "Number": "229",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "C",
   "Clause": "1"
  },
  "r776": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "A",
   "Number": "229"
  },
  "r777": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "B",
   "Clause": "1",
   "Number": "229"
  },
  "r778": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii",
   "Sentence": "B",
   "Clause": "1",
   "Subclause": "i",
   "Number": "229"
  },
  "r779": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "405"
  },
  "r780": {
   "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"
  },
  "r781": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "a",
   "Publisher": "SEC"
  },
  "r782": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(1)",
   "Publisher": "SEC"
  },
  "r783": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(2)",
   "Publisher": "SEC"
  },
  "r784": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "b",
   "Subparagraph": "(3)",
   "Publisher": "SEC"
  },
  "r785": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(i)",
   "Publisher": "SEC"
  },
  "r786": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(ii)",
   "Publisher": "SEC"
  },
  "r787": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "c",
   "Subparagraph": "(2)(iii)",
   "Publisher": "SEC"
  },
  "r788": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1405",
   "Paragraph": "a",
   "Subparagraph": "(1)",
   "Publisher": "SEC"
  },
  "r789": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1405",
   "Paragraph": "a",
   "Subparagraph": "(2)",
   "Publisher": "SEC"
  },
  "r790": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1405",
   "Paragraph": "a",
   "Subparagraph": "(3)",
   "Publisher": "SEC"
  },
  "r791": {
   "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(3)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r792": {
   "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"
  },
  "r793": {
   "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"
  },
  "r794": {
   "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)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r795": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1"
  },
  "r796": {
   "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"
  },
  "r797": {
   "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"
  },
  "r798": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "28",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28"
  },
  "r799": {
   "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"
  },
  "r800": {
   "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"
  },
  "r801": {
   "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"
  },
  "r802": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1"
  },
  "r803": {
   "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"
  },
  "r804": {
   "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"
  },
  "r805": {
   "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"
  },
  "r806": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r807": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6"
  },
  "r808": {
   "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"
  },
  "r809": {
   "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"
  },
  "r810": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "270",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1"
  },
  "r811": {
   "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"
  },
  "r812": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22"
  },
  "r813": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "30",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30"
  },
  "r814": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(ee)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r815": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32"
  },
  "r816": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-2"
  },
  "r817": {
   "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"
  },
  "r818": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480265/350-10-S45-1"
  },
  "r819": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/350-20/tableOfContent"
  },
  "r820": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r821": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1"
  },
  "r822": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/350-30/tableOfContent"
  },
  "r823": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1"
  },
  "r824": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r825": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r826": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r827": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1"
  },
  "r828": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r829": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r830": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "350",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2"
  },
  "r831": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/405-30/tableOfContent"
  },
  "r832": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r833": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r834": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "405",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(e)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1"
  },
  "r835": {
   "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"
  },
  "r836": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/450/tableOfContent"
  },
  "r837": {
   "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"
  },
  "r838": {
   "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"
  },
  "r839": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r840": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r841": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r842": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Subparagraph": "(c)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8"
  },
  "r843": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6"
  },
  "r844": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "470",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6"
  },
  "r845": {
   "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"
  },
  "r846": {
   "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"
  },
  "r847": {
   "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"
  },
  "r848": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "505",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-4"
  },
  "r849": {
   "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"
  },
  "r850": {
   "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"
  },
  "r851": {
   "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"
  },
  "r852": {
   "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"
  },
  "r853": {
   "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"
  },
  "r854": {
   "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"
  },
  "r855": {
   "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"
  },
  "r856": {
   "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"
  },
  "r857": {
   "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"
  },
  "r858": {
   "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"
  },
  "r859": {
   "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"
  },
  "r860": {
   "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"
  },
  "r861": {
   "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"
  },
  "r862": {
   "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"
  },
  "r863": {
   "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"
  },
  "r864": {
   "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"
  },
  "r865": {
   "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"
  },
  "r866": {
   "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"
  },
  "r867": {
   "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"
  },
  "r868": {
   "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"
  },
  "r869": {
   "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"
  },
  "r870": {
   "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"
  },
  "r871": {
   "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"
  },
  "r872": {
   "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"
  },
  "r873": {
   "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"
  },
  "r874": {
   "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"
  },
  "r875": {
   "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"
  },
  "r876": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2"
  },
  "r877": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "15",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15"
  },
  "r878": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "740",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-3"
  },
  "r879": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "815",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480682/815-20-25-6A"
  },
  "r880": {
   "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"
  },
  "r881": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r882": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r883": {
   "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"
  },
  "r884": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2"
  },
  "r885": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482900/835-30-50-1"
  },
  "r886": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-6"
  },
  "r887": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "842",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479773/842-30-50-3"
  },
  "r888": {
   "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"
  },
  "r889": {
   "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"
  },
  "r890": {
   "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"
  },
  "r891": {
   "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"
  },
  "r892": {
   "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"
  },
  "r893": {
   "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"
  },
  "r894": {
   "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"
  },
  "r895": {
   "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"
  },
  "r896": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1"
  },
  "r897": {
   "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"
  },
  "r898": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B"
  },
  "r899": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B"
  },
  "r900": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4C"
  },
  "r901": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4D",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4D"
  },
  "r902": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4G",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4G"
  },
  "r903": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r904": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r905": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r906": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5"
  },
  "r907": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r908": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r909": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r910": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r911": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r912": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r913": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(b)(6)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r914": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6"
  },
  "r915": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r916": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r917": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r918": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r919": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r920": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A"
  },
  "r921": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B"
  },
  "r922": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7B",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B"
  },
  "r923": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7B",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B"
  },
  "r924": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2"
  },
  "r925": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "80",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2"
  },
  "r926": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4"
  },
  "r927": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  },
  "r928": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>72
<FILENAME>0000950170-25-067195-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0000950170-25-067195-xbrl.zip
M4$L#!!0    ( $B)J%HC:#<-A3H  $0\   2    :6UG,C0U-3@R-3(V7S N
M:G!GI;IW5%/?]RT:!440I4A'0*6)E*@TI45$NA!!Z4)41$H,?!#I(1&0+J @
M\ &$J#21)B5$:J0W(72DAE!$>D()1Q*2F^^]=]P[QGV_/]Y[]V3LC(QQ]EGG
MS+77GG.N),Q?S'D0KYF1J1'HV/%CH$>L%X@Y#3( '?N_//X3Y/\VQC'F#Q#?
M*5 L:([MV"70<;YC;'S'F.T@*1#HV(G_,0'T/X]CQ]G83YSD.,7)=9HU <L+
M.GZ,C>TX.]N)$^SLK+-AK/,@=KX3_!>OZ9\\9_68XY*OP/7P=Y].2=^N;!&T
M'B++J#YY$<'))20L(BHF*R=_6>&*FKJ&YHV;6@9W#(V,34S-[C^PL;6S=W!T
M?>KVS-W#T\OOI7] 8%!P2.3KJ.B8V+CXE-3W:>D9_V9F?<[++R@L^E+\M:JZ
M!EN+^UY7W]K6WM'9U=W3.SPR.C8^\6MRBK2PN+3\>^7/ZAIE9W=OGWH _#W\
M#ZYC(+;_!?V_Q,7'PG6<G9V-G>,_N(X=#_S/!#[V$Q>OG>37M^)X['ONTO7P
M4P*WWWVJ;.&45K4F"SYY,<0E)*-&DJ7\!]I_1_;_#EC$_R]D_PO8_\8U!>)F
M.\9:/#8^$ 3$8%S^' _Z?XS2_ON.0S7FGA7J94YWAY4V%^ )"676C EH;03[
M#<_"W"W[S_&R.FI):Z_(]G8$QK6C*O138LP"&KB+]P1':'&G]U:H8U?:\9SJ
M:R=O6%'%PVSAG0&+S^%L)OK6PMSY6%%S#]R?;/JK0\MX.G$,/U\!(ULX"QE%
M[U)_ %;*K=Y$1.',>DC'S^=1D<9*8K:)P3+7Z?E_[RMY/RB)^O6GOU\*4 ;3
MSQV[6LV8T#N)S4@9A'Y$ZCODB5X0%=2Y0&([5F?ZG-?XPM)IJ@UZ919*/PY;
M_JU8OK[M' "Q\JCXZ00#E+KHY^0V>Y.GIG]HK*?PAVXJ=M9J[%2PFYX_<!&.
M!RN'=[L_74PY$<($O<;/Y^._&2>9)7.CQIF@X]MMT==Z(,EJB5=$N2*<73%V
M6:VB$E<-.I,&WG!=CV8_-EPBL=H?TFJ^MWN:=4?CZ9=V'P#8(D\K5+P4/$^(
MAYRE.ZI(!S]B!?;IS!6?$+-?X!JN5\DN?EC)&V.@*54_\]DB/W[OG@&HUT 1
M9!/.SFNDS_Z/_OF(&Y<^%>(L0DJX'2]_?GM"P.K6?SD$EV!B##VZX-$'';Y
MBM0BOH/G!%V!;)-?.943VIFUG)OH$_K%,F!J54RW<2>LP7D"_#!V[XC'$(L?
M5^>,;W-STRGE99QE#$N179@@;B?34!)L$DW*B*/;E':[G);B"^H<@)X-*WZZ
MRR_^IU'97W3B90*G0-?UOH679$:UB-*3H6>/15)(EOX2>4)TJOD*KL+[XVSR
MG_'?AYW]SA5@983099<%H[KOT2>2YB#[J75I@S(*]!>5I_#MK?@;$ \?0#%Y
M0YQV QKV&4A=M,AHYY%P0$:2<"V(Z[2%HC?+&%]8]8P!Z?WWP9?R)TR#D585
M'K9?-$Y^4/M6BND5[I!*@&"AFP;^@<$4VB(X3EE']4OS7Y18D-2#9C(3%/,L
M$IEX7FRY_P/%JUGZJ:GC32>[QE"'JI]JOQ+X'A*B=4[/,T$<3K)%,4A(D>?0
MEQ:/LL_\U9(.4Q:9*EV_ T24B)KL'_9"Q>X!*U=2&/8.QBMRV2,]V@>UN\%Z
MZ<[$O_)_J_>W%WSHPAAJ'*5FV!'5CZE*CR33[J#U;M!=:;>!8BP"=>?Y:7@#
M^E@05U!-PZ57/BG:A/->;K@-CTL*=8RSE(G-5";H! ^ 4R0LXJ=H'<W\N,R
MYABRG=&PWOE5WZXZD3O5GM2=M1>G?GI9!^^+;N&\E?_I[5#L;G%9Q)_?DTIF
M@KXL#6_!+/4B(="5$9%%@=%%J8B<&^6;?GTK"K").S'>F_BVG<J5$'S;K\;[
M:-\28+<3S<^XN#;Q0M1[F^Y#.=WA2)LQ:<]X%GUP/V66WTBVO]%*MA[_\UWD
ML#*$Q--V1M'G%_(TZ8N9QK)KP50W:3=E.C\QZ?<%(>\B-KDF^1>4G;U#5#-^
M<"B-363 ^/Z;I% R>N"ROY?NBF) @_F6[0;7-6?A?MCNU4MD0LPCD/XG3][%
M=\NKU)+($6D^]"%M7QWQ,D?]%ANT$O3R^,"O8Q.,S,/QVONY'))S1\9_>R2*
MK__;+9DG0=M?V5^_WR_?X#.&WV4TDR8#KF$,AI8)F06KY9:H_:CB <O@HPEY
M/3KEPT%'$YDC BL[C29!>68C@L]Y:B!R3:5V^B(X;TB_Z]2R>V;F+D(865W'
M,$$.!WDO0E 12<%E!;),D ]D5S##[4#2B EB1XDII?0_)G77:&?&NM>3C_K'
MXUXZ^V'I1QKPX--G"#VN.3]YN/7WT2> +FH2 .7^!RE^5 KQD(I)?_L3Q[MJ
M%71PGR(9754T<Z8@*',_X;[WJ_="$1>]7)6B^<OB_Q7H_(>C]J1';PB/):9B
M=5\JT;',RO/GU"8X^&7#0<4TI;:EMP&<CDE+KD >8Q6(*Q,4\2]2(4C8:4*/
M%S44(ON5'<XC!CC0A1?$WXM72P.I+3NW"I</O%U5$M0,WTDG7GA3B]9'\:%;
M?C!!7."GWX;0GE(1DA! MM14&=M$C"UU1GK.7W?.45$9L1XNR[:IC+C^Y$I]
M8::G:/) BOF_\:7&Y(,729%[4DNA3%"470.VJBGN4V-MQ)H\NYK?G10%=MX7
MY6=O+.IZK!2!D]Z(K<W72:Y7P\@H1$):6?Y$ZABR'.T)X8(\ATZV+=HF<,3J
M22%MR+F5^0^_U@0NVH]$99U\^'5VSMA?N3!'47,K#S?ZN[HN_=%@%YM94L)>
MHW67CF\_=YR:ZB5S@4JMGO.5W9\64V[RIKWTO_AN-,WM0H3^23S!R"=:*,3R
MDP:>?. XCI($XN^U.A'.$"T>P[\H*BI$VE3&,3J*G:X&S)[,0P0?8U]0?U2J
M%P-<I 6B1F%58_LY-3!^'2>2,_]<6.O6Q-TZ $N^_R!NR50NH0O-[A]F!.8#
MGL_\Y>WP7Y0*;[XVZ \/FO*4)>M]^Y&J$G5SW<CRZ+&BR]%$QLL/!9-7&V#"
M<[4TVF%^(V'K:SP]%&!CK9D/F2>N$4PZ<J<FDL>SR0UMAYNSA>_R&(-$'O\#
M()-V!4AVJ/^W10@33#D[/C#R$#"H&-@\B12G9.B3RRN]AZMD9W>,W'TF+!1M
MA_=G-;H<AM25(0[#ZMH>%2]G[<P::T=?SMX>\.<Y,9NXGY_J.#M]][7._1:E
M=R;YU[6/G_$SXX]>+ZM8R<.E5EL.],,>1&>A)_;]?]?LJK'T_EW4?Y>/!\)V
MMK4:.$T<[JK#I$.+^MCL[.C0]-34U'3GR,.',S-W>P1X]?EUJBT42WV-2K=Z
MOYJ D@X977=K<ID@ZT;LR ;"]?K,G M!L*RL\=&KIUG!F9?BKM^:V3AI(MIS
M')]3 5R&TH6?3)!\VO'G4%U29"CQ.!!*33FJJNE7V5KLK"?&JRN\Q$Q.4QV&
MRU)@FS[BC"'):[4-W\Q%Z*K'$V\?M 1D%41_O:T<71Q6X(43<K0XZ(:1K:6
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
MY3!.&H<[6%_G?8O@/Q.LIBGP;TUR-R89PJ8GCVHA2K$Z>S05 YP+I&3,8^+
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
MQ4^'P7CXM_AI4DV&X1>"T5]_>C;[/7UZ%":FM6\H_'-:??YYZ\5X! R<H _
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
M_?E;-:J.ID=+9;+HSG-IYK2SUB&C7<(3BB!3 KLA$/,T2%,:%_O*Y)L]UP%
M=9" _<^A'J5$X#Q\'GU*MQZ,8WUVI5W-//ABCM?5T<U><W8%*#,>^3/'MV0G
MQQ%)"_BW<7*7;GV(D],"A%=$CV*)#>+&Q[1DAQ$+0FE);:1&9IE^4L':9$/>
M!PTIB2?2$!2DXXB[,B#0DA*< (20X ZPM=GJ9U'M0\2B-1'&*H9\2$D1 0!4
M4>Z0<E0&4U)%I>VKJ.["$WPU;%<-6^%L%\UGJ^7!OZ['1VD-9#IIHX;]^,J
M=(X^->]"/5OG/KW^ 9>DOEWU.CZN@ZO:!\U*GPYVWQ^LJ4#$TI?:H:!2\CH:
M@2QC"D)8PJVPQBO=V["D9RM@7<8104I> M*B*=G :0!GPL#!<%)&9115P*.^
M<F5U%Q;>U6,_=9/%*-92WPTQWG$)$:J7'G'I-5(D53!)9VEIN*2QMUCEEOK^
M/DQ,-0I^X0!61>D-<9HZ#EP!1B#N.4<V8(PBL2X(02B3N*^LN4=JZ?=1-5D"
M;_J@8US)UG#K4L9DLP.R'FM4^@!<=5$S1_O*R">$W>9DE9;ZC."$IMHY3U+1
M%HD,0#0 )Z*L\MBE&H!53QU^J(-IIO5IJZXS%+4JJ^U&:$-55*CD/(7D$.<
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
MW")*,R$,@G!4)I9A9!W\%H-BU$2%.>[M#J&GBB!N@/&+5]\)P#]AS-*;V(&
M^?:4103HT:1]V!H9[1D@1U4:%2-8E-XBQY4& ]]][1-UQNPP*H'0,SH!CBB4
M"3D(FG)8F" 6;8FET[ZTO44./<QA/>G:X'<2:&?YLGD*;2U7_(CCRGIKD1;I
M !QM)#)$><0DA-]*R9+JWMK*WM6Y/!$+@\?6FX@8IC;U.@!F1A^0=)SIDABM
M96]9N(:-KIZFV(GBH%2JQO=64\231EO**:+<ID.RL0ZNOT*P*KU,GD:_*8F"
MI5,R)"DUXB%M#K(Q(NU*&:)C+@315]9FR'$GR#&KS/E:LO/[",Q:W9CA:].X
MRJRG>(.9PB1ZA!UA:=<C1\KX$G[0TF%A#%BTOHKW6N4<>Q._4R9"20U!M,U"
M<\J0$:5#GD='%2-2LM[VP<B9GT=><*1,1B8B12(ZEWJ],F1#ZK!L!)-,:F))
M;RMB5E=8EGU,=1_\DC1:E!&G])"8[<FV5F$DI0V!ND %77H+F!6)/7STCF.,
M%)$L;;3 2"OB$7$X!L--"=:[KRK8SV9[G=4+LM1"UM&(G,3IJ!@<D0E"PY]!
M1RHM):2WC066L&=[-2T1(Y:3]G /FC*@K@0F$F%1*16-2@D;9&_W3?1Y#^:=
MK.4%E7P0-ZFS1"=,FX MEU(C@VV)O*92<\&9[F\;A=4%+(][_.73^&'&--8T
M@)T@Z8S%DH%'=M@CX47@7I<A]M</WY:/>R,_3=;BK*?XK^.17YE3,!FG!)A$
M49!MDR.PZ<I3AUQTFD9OO<:]Y5#_FUP\D7<6(I9:<$2UUXAKQI#BWB!!2Y>0
ML82@H:\\[5NKR#X841EUB05!(@!8YM1(I)TO 39S3B1GGK#^)OC[$LST@8_&
M618C1\X3FW9*,61QZCKN-(3U:8NY72G0_%2'-ST1]ZRW,9V1QE1,S:P%P&67
M^HYK";H90NE#;QWERA1]=K?*8$.(J5,E"P(#M[1"UJ4C*+D(DG$-IK.W&<I[
ME5//SK4)DY?C(["DJ:O\ZD!0&[6D7""/0PEV$0=D6#JS!DRB$0)SV^,"MC[#
ME2="GQY+@:5%KCWX-8C4,S:D!D]1>QH-E;RWZ'.E.@ML4EJW#W(= B?"I)/Z
MTIHGHQ19[N%/(5P,F,9 >@O?^F:FEN/T.=%@<F1 NG3@]$6)D<)2(4=U":&P
MX]&M.H<>.5!Z&DWCU!GN2H8T#C&!MW12-/8@*-)K["2VOK<>9&5.K>L0P'&F
ML+'"@=X1A[BQ&NF@,'*L)-9PS33M+;]R_N VPM+A :.<.3#*:2>>$0GM$X$
M_Y?($>4$T]*".^VKL/2AO'])KI-C+*2C"%",0EP#5S0@=609=<(2YKGL;0JP
M-ZYS20HC2V.43>?P<E 8+A+DU $YCIFV0@6&LW7MW+HNNYQL26HL(U?>I/:8
M)'7U\Q&ETT5!E]/QXL0&)WJ[YZ+/BY0]6'_FZ;!FZ@V*#(/S=((B10E!C$L6
ML"VI4KUMV'CWC0W ^;4X^>*[ _O>]HN[-4)=T7A/QY('L%JE3Z=,2A.1IB$=
MC8Q=2 4(VB[]:+8[!T\<4=Z)R;8EH3:U!E",HG2R%++$I P3I5%$+!CI+?+J
MS^'#3V23/1$F&(YB3#:YI!%9+@QBAA( SM(%M?1:UKMBC>ZB_L DT3@@$5.*
MS3"#+"Y+A&F(M@S.$=:[SHQ/U.VAR[66($5)X8DE=:F(@);(:*&1"9X);ST.
M_:NH>Z+6'K=O8+*;&I@LO8*^JX8?@F!+%82!8%TTX@ITSK#HD;#&,8$MMOWM
MN)OS6$^.MH05BI8AG>2=-F_;"($$=AR5)89/52@5SGL9>V/OA:,D)GCH"0=[
M[VE QD:"2L >ACM6FOYV0^DSM_J@B!$05-J:%B4# *6T!2_N)/*N)$2;4CN\
M= !U=YP-XWWT#2HECLRJ !Y/FM1X-YW=[7A$3D=N.'?*];=":*5*2G)?MPXB
MT:=H'YLTQ$<K$:74I;  ; GF:0MZ5+YT&F.O^JHAO2Y.Z<R1EX1A)IQ.Q7"I
M)U:ID)(DIE[BLM342QI[;,-R&N=19866ED"(AT+@ G$M E)4NW1LH )LH#SS
MO:U>7EU9>=QV(YWE_" 2L)%3A<HH&!@63Y'F(#$E5SZMPPE&>UOU]A2'H-\Q
MXW+^F+H70P-.:$VS,*6PPMD$'$3J<12]1PH#TJ8<\ ,8'"GR!I>5=E =KDJ
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
MC^\0=]]_*/:*UWMO=]^^V-M]4^R]?;W__K?=#WO[;\]DPF15>E+K<Q=)OQ:
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
MM#F<&U>PYJN):7SI!3"==#L:FM/Q=')^)5:K;?P?B]N!DT-SW(2=)AR;&AS
M-6M:6U?K SY7366K834YW5D\X=KD_^R-4F[3DOW'3:MHL\7?:[])MN6]OG:O
M+[%M*N\WRHV>VC<K2%)7)&O<'Y_J\73DT=QPQ/:_NU267-7-[Z2-MS'I,G,\
M>]SU*[FJ%V[B?HVZBCMFX]>&K,LN93AKG"BO;YSX4$*>)8\6R=[DPQ.(+Q:B
MTAM2+U>"/QS6(12_P=^'3?$*0AK_DZV?_?*;J=UAP<C@D05\A?CR5%6%V2?T
M6Z.R3UBV3[BAF>X&V9XEMQ_%-]7$9;O_-%6<2R3OS'%@MCD$SG;D\>S(#;O3
MLAUYXETI5P&DMT%$<@. O"4VO'9*W53L?XM/J[/WY&T <4R]>^ZE%O<B;R?
M<>VV15PEZ&B\)N2\*+"WI^._]U8FUW#3R4_52;KA=6W:'0EM+OSU1V="28T@
MB'FA$2]Y0-H%AF+0P4CNN2_)5M$^Y63R/FWL>O$QZB@=C0*%T@7$(^9(<161
MM]YHP[$E7&X5(W,$4Y@VZ),QQSOOP^<PFH;7]?BH/1,-!O&W:G+X8MH *4+]
MZL0-IXD-NTT3X'_^@SG9*J:C:O;.WS_^?O 2H!/P$Y[)M@H?7'5DALW/6PC^
MFA7,_KQ5G4QV1M,CY,?MQK%TQ]8OC.F!UNRG9Q?G_TM6WPNO>4S#ESU)]B39
MDZR9)V&2,&J81[&T!G$<'-)"<>1\J0DFS!IE+GL2*HT69<2(.RO DS""K%48
M26E#H"Y005V//$G)!I*)[$F6[$GN$TM^,QF18\EN%/_%N)FD,KX<3ZXG"NAT
M*6L%#,WC"NL]J;LQ ")$94HG'5*!2<2-C4@#<D 8!TN(E38JWD4HFJS8?OS+
M>.R;W9$_"/7GRH7F8#ST'>$$BNF 2MI#G) 5_(D4_#XIK^RQLD#W5J"SQP*/
M5?)0:B,"PE$YQ#FGR,H0$2F)H4H)XC3K(N1]!(_%!YCV<8UTTQ0\YU%[&OO^
MI1XW37%<C^'C/MCFOA!Y38!$7\BYBC!ALT$ T20(0P023GG$-8Y( =)'L>2<
MP145H^TB;&T-T+O6_G3D]0DK!R4C/?3Z61M7GW;9,611W&C'8+QUK"P=B@%3
M,/+2(T.#0M@*&8CQ&A/1172X!,<@]4"2/BY@KI<VYD1G3X.]@S <PDV#XE,8
MA=H,VS8+QL/M53.IV^Z513@Y3LU8<AYT_7S^IBTZY57E/N$&JC@1T7/DJ8F(
M$QV0X<8CZH1DI7).ABN%5/<)*.=&[B\S$[<[\KL7#-RKF7WK"%((.<!2]1!1
M9%W/*='LO+) 9^?5S6IH#%$)81"1' )8AB& C88A89DP,7)C0B=![^,Z+SR0
M&&?G]>2ZGK.C/0V89ZT\BUB/CXKQ<9B=V)5#X_5#%WTAYRIBA\U&!DQC)1,>
M8)J7B&/AD-96 3Q0P?@0I7&=Y$GW9^9G]&EFD]Z,FZ8C&*#(0,H^%DEEI5Q]
MVF7_D$5QH_T#-0;S$F.$O;2(:\V0Q4(CB0VFA&@;I.\B<ER>?X!!#G!.F_8R
M"LQITT>) L$^A6:RR(T6/\P.U/AQ4(Q"KII=/V^_:>M/>:VY3XB!,:L#(0$I
MXC4@!LH18 B&(N%EI-8K16@7$>7"K,T PWQI^6VX0[55 V2"W[Z#'TK90^B0
M53SG1[//R@*=?=8=Y?V'AYS#] "OR#V7/"J!HC401T>JD%(68N)2Z%A&Z8/6
M7<31#_>*W\ZY9E_X!'W4?LQYUQ6+N-N\JPV@2Z&81=O%Q)SDLN0U1"Y](><J
MXI)-01TWM%;"C)'452D$ 4X^II)B(3WRRLJ O>).=Y)[_;JDOFC/6(VF,.;]
MLY*07UM+-;OO0[)3KTXFM0&74(U,?9K.1&_>CD=I)/6XK?!:P(SN<KA"E3W$
M%EFY5Y]VV<]D4=QH/\.%"QI[A@S1#H))HI UJ342DU@JN$)B[";V[+N?F>6"
MLZ/)N> -C4S?U>-TYC28!M"3')FN-V)8G86Q5<04>4W]VZA#,B:TB@PY3 D@
M"*Z1DB']L"%Z(TEYM7+L_M$MH(GY8O>O812Z:[I!R8"(/E879^7.&>#LK;)
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
MB"A1T"5(*,42Z5)()'A@F% 9!%V"5'<^.38 ]J?_]T9N9[,HS-D<GS^5_/)
MRBB"1M@RD%]5@BR24B',+%.,4ZI%)^W7KF/Q7M-,[\S>E&)-+$Z(HPFC&T77
M1.L4IP@;!<+GF$&F+"62)?<!B](QR9<ENLN<ER6E)U@3)),V<NI!)8.1X&A\
M- :X8#!=%K_VIY,F-4H"45O.Y$J"O849(&M*AW@9&%(>S(_FEC(J LSVZK'-
M'3&MP\DE-;R-J>F),:I:<4TUGC_9^MG\P_,_QU])T\/ZCS5<,LA%&+G\J'?=
M#$H;G 2LBS3#8%XQ@%P3640$<S"]0A*(]+KW/&U<<[^-'K$Z 33^KU"/SY5!
M]6N/1U;"E:5:]@%9_#;/!W 2@P&([3D$'IP#2K<E%^F<)A>XTY::)2P(9!^P
M(DKX)$UJ<D:AZUU_X]&3IQ,,#K'4$3DK%-@9J9!RV" 7C8Z &Y61I@NL.9MM
MSW() L=2T'0$ IA;Q&W R+!@D"@EU=B T:2='';TQ)//B82+YV"4@F@'S)..
M&,0=2*YF02-MA>=4P37320;M'-<?*8M@3& 8.X6<!"D&>0Q(&TP0,=P#FO#.
M6MRQ/'>?0I X)Q%NE%TF0 IEC*A,-IL+DM9M 1L2;1UEBGD=KW*X"]F]UTK[
M-?T-.1F0$@^TN/FDSB4S\^;5UR?C*69@="+"6#C$<93(&$60<;+$6&/!R^5H
M;8<\Q5H-J+C.RSRF@GY=7W\J_92$X, U124\%O@B>?(M!)68<DP\  Z]'/V\
M?U+E&H;B<D!I.<"$/J&2/A4+2TP"X\HB(J-%G()J*4_2-G["."DMQ]VTUUDZ
M"XG@ X;%$^ODN936H#"3&TSO;Z9VAP4C@X)B*EH-?AE<.+*A7GS*!P4\[SC
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
M^6S5;R 8G^ _+:_WJ?7OU30^F\8K.P%TV6""?;>>*_*AFE9U#//ZV?()&Y-
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
MH)B*+FCWCM#_( T1>D*3 @KCN1O&P]1 3VF*? -Y^VR,;*=R-ELG'JP/@DU
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
M-?+CR]B%,S9=(?&!G!7K"CDW' 3KS[FO#BOL?302HB)XAR6*I72(.UHB'8Q
ME&DM-;.<1W'_T%9I2NEI*5!4/B)>8HXTUR4*+EAC.7:$R_N'MEY/QC"<7]OK
M#23Q@+,NGE;NBE#N79T=MBQFR,B0T0,VW0-DV(C+T@J#K P8<4,BLCIU=U&V
MU( -1M.UNL#;])YK'3*T&6"%,V3L[>QN#M]WRA<\#>D8:'/X838N)A%^\M4P
M%J,;)S%]G_Z5#I\4\W2THQH5XZLXL3-X?)$DYD,UJ^+T61?"*@?H.>9H7X[V
M97(>(3FSX&=.[3PY<YB_HZ;=3Q%N\E7=@;NPHU#8RS$0XS_U%YUUF0_0?LL>
M8PXR=CIZHTO-990":6LPXIQ09*/BB! 3"5<E)GBM8.DV ?]5C02?AS%].!V%
MTQ7%U%;_"SZ@W.2X3I;2WAM8F3LS=W8?0[!0.$;#$2ZQ0UR6%CEB#"JQH9I%
MYJ);Z^^^S0[ ?C&$=++X]6%):>M[ ]F!;,N!+.-D4L?[FWT ^RE..ZMIL^/8
M=W)FT.\;Z$<5@R5,("QL0!QC@USJ].L"H\933T1)VW$<&TUT7BNB=_;3V:>K
M5&7NQSB*,,[M\+ZI"_F?.!DGAM*4T.<9Z[-P9G\Q<^>Q<V>KT+&Q2],>P,D%
M(\O26R09T0 TVB%CO$%!E(9'APD1KAV/M"5P>EA/)C$ I,I U7H6Z6>Z*^7M
MS8YZIW7+%^1L2D@#P4LBEW<VLY61K8SCM#(VVP"EH=Y:+! KL4)<*XML&2.*
M/$@<O?:4JS8<U+K)\8])%[U8444MQ:'I@!&6$3^+979-,W<>.W?N 32HE(2J
M,B24((@S*Y 6TB%2.N]E9%00TH;CN%/08 ,B1 :-O'=YG-[A][_8:O3#G]-)
MP0($.[7'&T_M,#5XN9JDPTNSZT%Q-;2C69T:&_\]KZ[2*:C.:M_L/?:=G-D0
MZ*XA\%0Q:HV]P-Q%!/:! ;/!**23 >&I%EI1%DH:V_!/DS9,NO#5Z"W8$J_*
MUPL=^#IIP+.E\FO)]! JVQW["D]G=9#!*H-5Y[ES#U!", $D<0SYZ%/5)AR0
MM4(A81B72DF'U1J4;..UM@TE#]OUI -"\ZYG%]W9O-FY!W?VU>PB3@JX!-55
M..QMU8[.*M[LL/:=G-D&Z)L-H+FTP98)^:E"/! !KB&+R')'3,FCIJ&5RHVU
M.GHY'B5EU*0]+7*>VH9]0K(OF04TNY"9.X^>._<!'XPKK"A%HK0<<4(=LAK^
M4-9XXZTPU/@V7,C]P0<E&3XZZ#/FTHY[\!E?7-C1>QC-W6J-TVF<3>L]SV%E
MZ[[LN7)C+N!V2,94)F<FYU.3,PM^YM3.D_.IHOWUE*M1@!$^8^DU>PW_+Q:@
M?FS]]M7A+-:N9Y;>J?>P1F#63:*/U0?KAKFS4R<T4G8;<USG*/+8B%5><V,0
MC669*DA&9 F1B$=C11E+)ME:ROPV&P_G(P]P,XT_Q>;O\]%2][VY47UM)=!C
M.E!8Y_A13F4[')/O&-DTXU7&J_MXQ; (AIJ(1.!IZ\)C9".WB'##%3?!!,;;
MV.G8)UXQ.F LGQ/N=&60-LY^9?>Y915Q/OH '\:3*E>WS&9(-D..T SY3$GK
MH+&F4B+C!#BUFE.DG2R1HMZ4912*DE:J6ZX;"2L:J>V4"(8'6F8K(<MI=F8S
M=QX]=QZ$,^N=UG6!$HV)19P#\+@R."3*DA!"0]2*[<:9W0JGOIRQ)P?*R Q/
M779B\QYP!YW8UY-X9:M0Q":3MDGQ&]?'QIJ<O\XB079M^T[.;)1TURC9;#*
M+TJUX 9YS\&U9=0CK;U  /Y8:)?*CJQU:VK'M5WHJ671[$7B_^DHU(<"3FM5
MM8/#XS(?!,CRFUW>S)U'SYV'X?(R)PE7!"E*-> 7^+!6@<NKG W<E%YC%G;C
M\K:+7U\.U9+<P+;3CG#>S>V@(WR3#'UEKW,F=+9,LF5RE);)9KM!4BY<J0W"
M! ?$@[;(!JP16 Q2E)9(N5XDK=T\Y=>-5FK)1. #HG.%E"RAV;/-W'GTW+F/
M?D)8&V&]0Y0%\"$]C<@QYI#1G,/?%FNWX[SA=O&#R@%E^8Q+%VNDY%W6;CJ7
MDWG<N,NZ4DZELWHZNYQ])V<V&?IF,G!JI G*(A8D1YPZ#^XC.)+48UNZTG <
MUTR&UES.I*Q^O55,RS#UJV4]J)7?VDK@$@.JLD61)3B[I)D[CYX[]X$OV@=J
MP"7%0<?D8V)P+Z-!6 N/9?1<Q!UE_SX-OM !YCF9IXL>:]X.[:#'VM37+6;V
M4URM#_7GO#MZJ*:$ W&+DYMO3L35K)B.AU4HEBS5%8+WT=C8DKI'8XY(KSG&
M0J;RX11Q:32R7A!P=QW')&CMY(XJ036:[EU2=(L@^<LX>U6N?-UZS0UB!D3@
M#AHC60<\D0YHHO:8=5D+9)S+/)YQ[I$X%XWP(3"+.%,<<0QPI8D22%/EA(W&
M,;-V@J:M0[=[QSG&!HJ(C'-/K@.ZL)%,GM0M)YUWRS\VJ^'&P_ -6@9DN*A[
M.\ZG,=SKV0'2]B%O+&<KYA T6+9B6K=BME,XCSJZM=TK-UM2P>F@68A(6@OF
M5$R6E%<6>4P$9S%:3ET;$0/0L"] P;Z>C#]4(88?KW\'37L^NMFK.+U1LZVW
M(1-\@$D7BV[U1_ML..ZU'1-VHOITCB!D[,W8VV$./Q+L)2S8*(Q" @>".#<4
M64I*A*TP)=&">K/6,'J;*,838J\"[.4\8V^'L7=S5.,;(QF[;!N:O>%,N]P,
ML%>&8B9G)N=3DS,+?N;4SI,S]V_ORQ;1^<N_G;U]=_[RE^+TQ;OSOYV_.S][
MVP41R29;5C59<V=R'@(YL^!G3NT\.9\J"VBO23\=,]D>M&AU-=!0S>83&%(Y
MGA17DY3&,[L>%%=#.YK5Y2+BO^?5U27<T(5-FJXLPX'L*':%G'W<+^RP+C^(
MFLG!1!^I-TB&:!$WRB,CA$,XAJBX\=;X5O)L7MOKI-VF[\:G'E3=)+Y>*,'7
M206>CL+94@&VE)VLS(#KW#/HF_;O^I,JTV&UD$$K@U9WN?,@0$MK[VWI-**R
M+%."BD#&V)2O0DDLB21$J3825/8.6DP-%.WBT=&N:(,#J>^??>:O-:Z;3_R%
M;0Z]S.SH?>6&^:!+MC*RE9&MC/T=YK4>1Q8"F C)-7:2(4? X36< 0 8PI58
MLS):<8W/;U1>JYV#).OB8=VN:(#L#F=WN =LFH&JNT#U__V_FA*:F?5 RAMD
M)^VKW<7'/L8P+<K)^+*8@DDR+<9EWMX\,A^N/T>6^@B>1W%@\A%>FM*8*Z8E
MDA;\+$XQ0]J)$A%'-=8$E\+15KRTA;+[&73=6U!UK\I=!X.)Z.+V99;V7 +@
MT)V]S.,9T9X.T4*0G@3AD Z.("Z81PY+@BP6TIC 2H]E*[N;^T<TG!'MZ:6]
M"U7\<[G 79P%6RL76(T^Q&DN%Y@]\*X0/-LK';57>EZR*( G[X.6B)6$(DYM
MB4Q(7088%YP;+1C'.RP7>+[4L[LK6:3,P,@N;N#V1_GD:H$=4DP9>C/T9N@]
M .B53EGGG$7,LA)QI2+2I1%(".F\IDH[O\MJ@7N 7J8&DN1B@5V&WEPLL,>^
M<*9=+D#103LQDS.3\ZG)F04_<VKGR=EZ@F8N%K@C#^[G\Y>G+U_D8H%9<_=4
MU63-G<G9<7)FP<^<VGERYL('^S?9'K1H/XXGD_%'N&Q: .GCI!A6HYA.U?A)
M#%4^/M,);9,/ZW5D?[##RGL/B<)"!^:\MZ@TA"'N%4':$X)*FAIW2:&E:/WH
MRZ^@CJ:ORA>U-FHI+9@*-<!<=7"#+<OF0<IF1H[,G=WESCT@!R^EU-P;9#"O
M4< @YSD!E:QM8$09ATW;1TQV@QQZ(' NF-?%(R.Y!,->2C!4(U]=V6%QM:@B
ME=W&[#;V3\%T@!4/$/R?JG*>B)8(KL GQ4(A;B@XII@S% 26IK1<>,':<$S?
MQ*76>U7NPKP@8J"R=?%M:9W].4#182V0,2IC5'>Y\R P*B@&T$(Y\E%(Q"GS
MR%HKD8A:@5-LF0NM5%G8-49Q,L 9H_:'47GGM*.N, C:HFA\7870CR\OQ^E-
M8_^OSNKS[/[VG9S9M,BFQ7W3PA,%2QTU$D)P,!,\1M:)@$R4@ .!1,/+-@O'
M_SR>W"H_,"]JS?<V*;ZV; PP,70V,;(;G-W@/K-IQJJ,5?>QBG$E@PHE4HZ
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
MOHG5Z(>:AA68__#5*"93,EF5:?"V*&TU2=QW@T@K3+F@Z,WD'[]6)\4+<!O
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
M>&:'Q<]UNG6397TWW_JF#% 5LY-[<"9&)XC92P/BB,T#KST)3@A$B 1GD]F
M#*,:1>J=(Y%&(=K=Y_QE,IZV91=0*@=8ZRX:!ED8>TVYC F9#8\6$[14M*1*
M(O !35-ER$CND#,:6UH*XRQMU65L%1.$'!C126?QP(0Q;V=VUA%\$Z=Q\J&N
M[]#4SE_U_-*W]9'<^H1N1Y5MQOP<:NZ@59!#S?6*?/^8\_B/V4ZU7@0.CJKP
M7B(NL$<V1(M2!QH;%%=2K3>B>8RWFO3D0IFV9)]P,Y#2=-$\Z4TL>]M\R1\Z
MH4(Z0<*,=1GK,M9U&NN\8!)CQA'W)0.L,PI9'0RRJ<81EF7PJMWDXHQUQX%U
M>0.WLWY[LX%;.^=YJ_9HS!9Z0I/^">-Y*J'5*<.EWT>3MB/S =HPGSGC2K54
M&'QH7*H2<4H5TD2"9RP\]AS,#BI:\::3/KNQ,D[KGD=MG5U2<L!)#RR,>[S7
M+1NCE]Y))RB7\2CC4<:CUE*5*0L$.X(BP CB$5Q8%WV)(K4E)581(VP;'N_N
M\(AB-:":9CSJ"![==77A7ZGJ[%\_TS?PN"OY;EFY^B"ZKJSV3IC/JB$\?EK7
MHZX]\<LXNQB'NDG036?JP:+IZ/LX2GTKAM>I=<.'*L!]J7%$NA>TA+^ 2].-
MOJD=#KIK.IO6[5YOOII$4$3S.#TI_M?X(WR>#$ 5A44_J)7WITX08>Z;G@O5
M34/2F\:NA;/#U--A"B^^+KR=IW8C1=UJZK;QPV*2-WU*TWCJ]J.@Z^J\ !=O
MFV9<5-,4?T@=,)IQ3RP\(PT,5FPY_+HW1O/S]_5HA]6_4W>)]-8?3HHW=\:\
M["NZ8=!-IXJF54G=G?5J&!?UN=QU_9;46! 45MW7XK8CE2WNO_6D2 W$)TF-
MI::XRW?6E\%<_'RX;%PQ64PV751<V<ELD*8-K&/?UST1;L@4I[,JG0Z_Z=];
MC_1F4+?3&<("#IN6& U-TJ>T'J$J2R!=.1E? A?-FNZL=3>-D^)M53<?^<)#
M8*#3N?MGZLN1FL+  \:3U,SU>EP_?FV\B;,GX^'MY)>=.^X]:=D5;'@[ESNQ
MI^NBZ9954Q6$!.[^F/X8C>]?MT+_:=.HK&D\<]N]*[WK+KLMVI*E=BP@+3#D
M"Z!TW5WLIN)I:JQRVR;ABPWL/X-17U(0G^DQP (-)=4&E5R!2>&#!C.D!-]8
ME# <RA5=-T.^N>G]:^!P6X7347B5A&K17. T]5F>YEX>O>OE(0^CE\?K-V>O
M3\]_*L[^Y_79R[=G;XO3ES\5K][]K[,WQ>G;MV?OWNZ\P8?$D7KE&/*8XG1<
M42%#.46^U(HS:I7UI"WA.VN:;2]EL!&^W.;C 6S2T.]N0_-Q;1S4G>*GW]S7
MX\@:'.:V&4?5/N)8Y]WMMADGF%0MEFUO'G=X!<6W:9YQ,*3M0E'\QQ+SF_.X
M#I636VFD<42K\52[6SLD\><"W8=-Y*QA>M9\XX@6Y& ;<#0DW6&^XY?6K!/;
M-%O%$K:6EMWFESP9L9\6A'=Y_KDC_+O;))+]\>;1I(F44FF#G4/:IQ[0$AOD
M>(D1Y\$I[H(4I)6TQ;M1XD5<N*W$13.@O)4\D0.6TR?1<ADZ,G1DZ#A4Z A:
M*R(XLA:4/Z?!(TME"5B@5:!*.DYP&QF&NX0.2@9,L P=!U_E)CN0#UK >N^^
MT^HU0_]>CZ$?@-+9+]-N2>&CL1H8P^!: OA[[3GBSEEDF0@H$ERJ8#&/>OU<
MPA8.YWH64DLF@\!==36S<#^A<&^S&991*S-VYQD[HQ:@EHU:NE@" NF4%1M8
M1,Y$@5P9&7?,<"=%&[[NSE!+IOR,C%H=$>Z\D=IQ/[BI'7/UM=3LKJCOKJS!
MP=H<#SI>WA'6[V$@?6MB'XT!PIA4WC&'A+=@@' ND2,V(%)J3+P3);C3[>_3
M;CS-T]ZNK>*\%T9)MZ7_,'R.!Q91R-!V7,R=H>W@H<V6@3"N U(,/&I.J43:
M,/"M X^$$W"CQ0[VD7<);90,C&JED]:12_^N/.ZO%*_Y2DF;)T><W=>O:?48
MNHY4>F()<M)J$%;"D"8TI@[NU% IJ2W=8XZA+P7\E_$X?*R&0Q#M\]',CMY7
ML,:Y"D1/JT"HPZ@"\<NK5S_]_?S77U>J/YR_?'?Z\I?S'W\]6Q2"&!0OS]X5
MMV=#5^I!;%='ZU!J(Z1:4MY.)M=P96'KXG*I"L+[A: 7=G:OO,V@#M&MGAQ*
M7_-!\=%.BQN;< UB'C;N/=A"DAKA&"-(.%!VW'B)+)8<2<^H%>"XBQCNJTI.
MO>4I>]O@"/<X@Y'#."!"93#82PR&TN=4Y6<-'GG'X!%?,7@V3\9%P;%*&_R8
M@P[7$A# "H)4*4ICM<41R_N3\8J"G@\8Q50\EYL8D(W1H"!,29)IYPC9\60(
M/]FTP_\98ZX+8E+ _<-E7:FUNF35#19N*"@2X%75J"9H$]ZNJURE*E:IYMET
M7,X^VDD\*4X?+&GKKZO+7/5 ^+P0.DK+4E#-( ZRAAS7&)6,L#((18-;=T2V
M:HATUSBI.S:>??+#>3*ZV^9FNI&;N\>\-3_U@$L8++357"!:.G ]M8"U9PK,
M4V?+,AI%=-3MM!+9)Y?@$]D?+K'>SR_G35$\L K \?U/72VO+RAO6/!>1XZ8
M*2DP ;A&@/(611<")](1S5KI$_YS!;P1?ZT^Q#6'Z/26A*<K%&R)G>C)Y\O(
M=XZ;>L P2M%2*^ 0R3QXT$I3,/9LB4JNB0Z$.1O6+*EM=,X3,LSGPV5=8IA4
M.'::2I8"B8;7)\7Y/6-GX:0L;)X0P9:"1Z:ZJ\M"L*F"V[($:B@BO&)\6?GI
MLKC;XBE)R<$#%LHMW?EA4<7V]EXPT,KYL!C"4*;IR1:(-+')G47)(TZOK*;-
MC8_D\,_$=1QU'!R6$BD== K<@J4O.' ET<0S%:WC:TE1S,58)KW%HL#)6='(
M^1 1 &J4#.Q]GNYY*%?^7I/@UZJ,=_@+3:-_%N:35(BU(YXLN2V/<S^XV"$N
M3P1KBBZO^06[8:'28&I-*@KK!)C<$1NPHX"/@@H,8TT--6O'CW'DSD=*D?;!
M@IGN#'*E# A+*AAXEISS>) LA/O%0AL]R66M;WMU-1E_6A2"3GKMRL[2Y:F0
M<7-%K>P6ZK%P<13A14W1Y;7RUCZFA;WC_1:QJ;:\>#I<DQ2A;<HQ)F6[[J9>
M 3''(>VA#*\7!:/!30X1II/*BL_J6LR^F@ .3F=-H>W9A9W5):EA:A/;%""O
MDJ*_4^3ZKJ*>W-Y5C=+K9C""45W<N9JD6/-F5+DU<A?9:#>UT;]:\[EQU>]\
MUY^(F,%&BI)+) ,!:><4(XW!:@XT4,:$(5'1-C8/5HV:5^5]ZZ<E,P>?D%Z8
M.7VQBXFSRBG'D= 8F". >Z09N.8V!%U:I5WD:Q$;*JT1*I6X\ X<J9(1 !^-
MD91@FE  %D%]9HZ'V\"=&N+7J]NO_/G_%,7JIE]9?8JA>6S]2+!_5C;\ULH)
MW]V!/Q%IG[XI'UQ_7MF-650?WECB=;V8\/V]=]%LO:]L@OVGW@?Z](P^KS?,
M0C6)-;>D*L/SR]'S.WN3]S, FL'!*Q>9YLT7&W?B $N>7XVG5?WLN@D!K/CJ
M1&Y2"3[M.CG@6\N=[;'#R]YF^U1"I>X(U5WQN9C<DX_%]FZ]B=OP\]T?@*=6
M2VWKFONN[/O8[!<C6\+,G]GA1WL]7=0_WIV,MBB3=[-VTN^W4KHF;1T1JJXE
MG7Q>-2=?='GKAG5?DEILH.S=Q([.\<]G(BL^$%4*<'&I @.6"@>?ZCTI!Y:.
M-H26:P'BK8S>I@?3]+6]3OE0\,_)/(9?J\9/JN)TF26W\M5M*LVRNT/.J.E'
M1HT^C(R:TQ<OWOQ^MK&ORJ_GIS^>_WK^[OQL]\U5, L:&PP>1V !<6P8LE%8
M1$G03GFM2\D?W5SEK;^(83Z,K\K/R^9"#%=^^6*_E7I(U0B>=3I[Z#S^($??
MIF5!_TUG 8>WE/_F7BU=F%JQT:X]RL:-N9?,4?54.=9Y=[N7S*.JM=\SM9^H
M$'OWNL@< %&[T-WA463\YE(7!\F]K72..8IU>*HSI[LB[C=W1N\_>;,^V;D^
M::M/S%$LQ<%VB-EM5:,N''Y_Y-*]K?N$-SW4)_^*,[AA.R'9;>VBXZKNL..2
MX5U@VX=3<9N:#?O@QZ.IQ*"P*JT5'JF2!L2%YDB7K$0D2J)+Y4K#UW*MMCF7
ML(BE_K;40R_&T[9+,# S$+250KT'*:+[5VT9*3)29*0X%*2@(EIB'$6,$9J.
M<42D10B@^G%0P1ON1"L'DO: %)0.M&JE#MU!BNC3^X:/;_Z2?<.O+-WYR(\O
M8S&SG[;J&9JA/D/]D5B<1X/P46@*F%PB4Q=O*;E&.IW (5Q&IDN/F28M^H*-
M!GJ7%%#+\(X'6*H,[X<MEAD=^DW, V'#HT$''P1G.%4B!Z\-<4O3&6RMD NE
MUXY&QGPK17!VC0Z&9&CHKN>7=P5W[OFEX_)Q-&U.EJ?-P>5)^XYJV ST_29F
M!OI^ ;UCTC('+IVE :!:E@$9ZB@*P1NM0^0TME(3\>SR:CB^CO%-K$M,K1QF
M:;GK"!](C#/F'[9X9I3H-S$/A V/!B6\P*4N%:"$T QQ!NX@J/F0:OT351)&
M9<G:< ?WAA)R (/.*-%9SS#O":ZNR]W52:7K4/4)750AQ-&SG_^(U%H1&$$J
M!H4X=009(0*B-M5;U!X[I7>J-%Y=Q8F]DW!ZYZ^=O?=.T<*O$<D;$HV/",Q5
M4&%11&0MMT@S4=+ <6DUWBF1AM%.X^I9XLW$ZAC$94NKW\3,EE:_+*VHO,&!
M,)2Z82#N(@>;2P$N:ELZJC5Q92LINC<J^]>DEI:&UG7+9A898,.RF778LIDA
MHM_$/! V/!J(T. N,<\"Z-G $5<X(,,815P8RQ5UGI:M[,WN!R+P0.=X;8<]
M\;Q'N_L]6GM5S>RPN)J,_QE]WIK-.-]Q79)Q?A\XSY2/C&&#C/ 6<2O!K9.:
M(@GNGE:8AY+%Q[B"=0'"10+60@6]7FB@=C%>#RCY?/>Q+)8'(989'?I-S -A
MPZ-!!TL])\PJI")/3==C.LO/#2*ET\&R,E*SC@[?X 7N#1T(&]!\/K/#'F#>
MB]VY!_B;'<U+8/SY!"X%H9UF)S##?,?528;Y?<"\824M)2?(6BT1=]HBZZ5"
MG%"LK5/4NK4>G-LZ@7>TT-FB#GJ[8,\'.$=[#UTX,T;TFY@'PH;'@Q'&ESCB
M$FF7>@CA*)"3/B IRRBC#(KA1Q7KV3-&T('!V1_LKC^8=P1W[@_6?7\ZJE8S
MNO>;F!G=>X;NT6BA/4-*>?  (PE(\T@1X3:")@9_SKI6,D*3SEGO0M8NMJN!
MH29C^V&+9D:(?A/S0-CP:!!"28V%C[7K1Q&WEB"#O4 "['1AF73.F%820O>!
M$&)@E,X(T5GO+^\&[MS[>S=.V:#V00U).ZI[LPFP-3'O=AJB)S2U&@KC>6I7
M^JV]AG)Q]Y;)?#0VA2"4,0J6!.8$[ /.!7+!&(2-(=AA&IA=K_BPY;[CE_O1
M+\R+LT]^.$^K\7<[F=C1[+JU RABP&DGJP3V1A/TTF'X(G6_N9-AAK9#8N@,
M;0<,;11;&8R+2)-H$6<XM35Q"G$G(J7."&[6*Y]ON5WZI-"F4N>33D9;>Z,(
M=N5OP[\L3/:OR\5Y.;^,D\K#OT/UX7/?UG_ +^FEU6AN5W@:LZ"Q ?[4@0%7
M8L.0C<(B2@*PMM>ZE/P/\EWSY-7[E\^^(6Q-D&H48%;/*$U]3I\_.<K=OOM+
MKWO,6BU)>TOTI1TL).$:8Y!Y*Q&GDB+C18DD8<Q3+Z4S:W9P:4KI:2E05#ZU
M5L <::Y+%%RPQG+L")?W8VL_13?[J9KZX7@ZG\1W\+ ?AV/_K^^*"*)_56N5
M^2*?'Y8NAM/90T=7+SO,K_!#.P6U 42^1,-J.D-Q&"^!(#6AK^+DIH%QJ*97
M0WO]K!S&3ZNK7:_ /^?3655>+ZE97X2F,SN9/:^7%J7G3Y\Y.XW#*JW!/2:X
M71-\PCBFZO8_?1>%'A-G6>LT_'@6XB>"J3^M!K[^%>,5C'7X?$FP:I2FC&JZ
M?8%.W_W5G"R9+RW,DO_KUQ",_W3O@1TBPKW.S&<_OKNIP;707'>UR>=5QU>'
ML:,(W#?0H'[RLW3RI?+?0)4W\<-X^ $N*UY,8JAFQ<_6UY43'E,/K>VE*QXS
MF)TS5K&JFS=#$_\*-,F]LU?]!#"^QI,:69_-8:23)+]-H_#=4.H<7N)F,8SB
M=%I<3:KQI)B-BU=^-DX=TPD>%*E;^DFG6._5J/C-7A=$UX.C@P+,XB(5JK>C
MZZ)V/6(HJA',PRY%Z/3])-9@57Q__YL?BH_5[*+P8'O::E0,XRB9C<45:%HP
ML=.S)Q$>]?VO,:W'](=$'X#>4:@#ZI,(.GD6ZR'\/)Y/X$FGZ<?8_/RF^3FL
MCR/47]MI,2Z+E^,/38=ZD69$S$GQ>WI7,Z][-S:S70RFL.GKD(9T-1E_J$*\
M0XMZ8D#* E;U<CR)Q:UJ^75L1U,@$I (UG$8P;3_$(M+^ZFZG%\F1ACYZBKM
M(ER.YS!:&.1_;>*!;UC@/7AF6!L&-DOJ-:DIXL0Z9"3Q2$F%.34R@L%PW]BB
ME /)RX"P)RP%'<'8LD'!'U1Y+*P-;BW5Y5<0RE=ELS)+Y?Q;0[H?QY/)^".,
M_X6%N56;?+%;#PQ_[;0#QNF\PQ?//'1"(K]/[%3\6EU6($ZSB\EX_OYB/)_5
MS CB>#DH8##^ H0S3#<BQS<,Z[O-AC:)V)6&:$2$\X@+99")@2*IHW:!*6KC
M6E4C0;"C6G 4-3/@BRN%+ -6$*E"DL ..Z8>LO9GGZZJ1FG_!%)-[JYJ$G1T
M">^]2 ]"P5ZCZV@G*(YV;X$\\/#@C2Y5-[AYWX'L$K.] X[ZX:0X'Z6P!VB_
MI.9 D]5Z\88/"POZ;CIWP_2/:5H14'6_QAFP8])F"[5:+E:PUH2CI;8;C6=)
MI<9//BG7/B@^0VCP.B*FF4;<JA)9JQB*6)+(K66Q7,OQ(P2TI0 ?/S@.OA_V
M&#D/GTH0!FI+C3F6=T)2FSC_-, _8!QVV*KBD_W0>\]KC'_[L0;49*C=HBK\
M[SU@\_MD&ZRAJ87_ 3S/X,4%J$DP$1J;HW=\!YQE/%<6&2T)XA)K9!RF*%68
MT<YC(\A:M5&LK/O_V7O7YK:1)&WT\]E?@>C=WNB.8&E0%Z"J[#D3H?;E?7W>
M:;M/V[-S]M-$72U,4Z0&(&UK?_W)+( 4;[)EB9) "HYHM40"A4)65MXJ\TG+
M'2>ECP41UDAB<RU(%(72!2MT:>AC\1T[#+X[R3Z<;1ES"\/P.@F'K(I7;+$K
M"DH4C_CEQ;R^F#8![Z]-U>"5GZ?U'_A_UZ&,X3C-_.)B6B.V7_8Q3$(-']LY
M7(U.Q+2%_9M.FGYY#0?I$]X+*<!_>AE<ZW&@^_1-)^IU53>SUJ])O@M\N,LU
MR7[:N!"4]"GP5_*ED*62D[1^R6CW2)_!,3(K?E2]\*-6/)VDTD'.+D7!RH[X
MI;4$?H)AT'^K)B;BMO A I/ZGU<=K)T3^@[_RFP_%DC=5$W:'O#6JPY8O;QT
M?(P.6#1>:",M6!):X8$8!8/:&Q)+&7)5\I*R+2/<AUR[0AAB(Z@"$7U!M"PU
MH<HXBP#6TMFO&>%WD?>T. R!G_VTQ6,W<K: =3=WNM@Q5F=0_P;<64WGS?AR
ME,V_'H  5L8M.IEN,7^KFS8E!JS&<@NA&@(+Z,/+[!<S^6.4O3TY/0$M,Q^#
M7@DU; (8^/TE6$2N/:$Z!14SZY<N&53),GR(N_F?\TDK!9) W"E4I]?KG.^1
M_76(H5[HGVE= 8U 1J(L1:Z9K5E%IRO\N'.\G4\^-R#D8;A77\XJB]\NGK;Q
M2J#:QN.%4L-MURS^V!K67%R,+Q?#;.V7@;'[R-BK3+.UH)T@:U:-@5'6A2"6
M?E_+WAWJ-2Z_3:[*2IQA?K'-%:>K,0S? CKMO *%=O;32EQM-8[S<Q=]WJ4T
M=H^ZH@K:+;,P<JHF^:53"VNTV(;+-[E<OLI27VR8."?9WZ_",[#U+CI+)^W9
M%)Q9-SW/X2W:X4=P^86Y[/;LXI&KKG.=Q7IZWOZ!A,3_ T'&K94&LX8EJIH&
ML^#!L6GFYBNV*WI!,,L0(TQPV)2]W)2_8 >DWS&DTGJN:-YW)OUB]VV?[EQQ
MYM86NMXE3ME7Z/X$U!;(=7C=U?,OQO-V]Y^"; =#!1./TA<WFA(^-VW?]^]>
M_]X]<N&!;Q[17#.5.LTBH <$5FT6_C4'/=CQ=@,?@"ZZ>@*.W<Q!3BQ'@3NK
MJ;_;:[1BXHHFK3]VF7F3A(;)XGCN9O/4 N"K\SVK/I[AI&#./YF?[^E\@ M?
M1%U(DI>V)$*JG"A:&L*ET$6T3(=B"PA+>1DI8YH45!=PCU=$1:.)CXS'W.2V
M5&Y7(LZ;23.KYTBDEZ%Q=76!QM&[^%^FKI#$2"T@6]7T9%LEZR;X%,9Y/4=5
M<L7C_?<Y@V>*J5 0'BS"7/N2*,DU"98YRTH7G(W[7]BT?N_A)8Q_-UE=6+KF
MCX+:"<OL2\)6?5/Q#=\T/RGZ[93^> "'1:/L)_OSE< $";,4@4ME?R4>47*!
MX+O 4R,W1LMC L:- QFX;6?8R^R7=Z=X.1XO7=3X69VL/I3N/[G[DF.V+*6@
M3A"C;22"Y@4Q/M=$",N$U53J<DN.<9^7!<@]XK2VV+L0"VL"YA=&[5DTK,1S
M\:.08U=*[T#$EQ92&&T,*20/1'"085H&C>=WUABF*(M;X%MW7\^[BZ]OUD6=
M]%QZ90<@OIJY1<1L%#J+_*2E_$H"+8ZGTQI\K-_14TI^#(@X,QZCR)NLG2TN
M(\JCY1"C+(:N+CA!!J/5YL'6[$Q,3''J0AK)*^P380:?:$$)]*X7?C7RR:9'
MO]-+VCRG&:T:[Z-=#D8RZ&=5.A4"5G+X ,S1]MG\8MHY"--)2E1,00(4-SB=
MM0]?_?+FP\M3M"ZK:1>7N_([ZH4/L?T&*5Z,#OJF UB;R4=0Q6'V.0"[]U_8
M1T5=CL4_TF)+%LR^T$)Y$.%!6BJ5*YC?%/::F\+YR$GDF-0&%BK1#%,]R@AC
M6>J%45\7]F^Z_8Z$>Y]"G[^%&FNTS,>P+VN5GK"^RWN4<_UG$4;1$V7 $\ZA
M:Z(*8H-SI)2%<(75@>5;J3Q&J)+EFN+!&=J$,A"+-J'T07CAHN:./3Z+L!-:
M' "+S+Y?+"V-SC]=F9\O#4PF>SV>MO&/)+0.35SEP= \1$IRCG:F+13!$B2B
MK>? 4]0HOL6+6E)/2T-)*,%)$0YXT?@HP5V1+#IK<XON^&.[UH.PVD_^EW(E
M4Z4CM$AE@UP1%4I*.,MY9%[:PF\YHWEN9"AS2I@3<(\/H,\T:+9@A0!^*R,3
MXK$9A/9>5 W6>"^M\:NTHK4CX??!S>M%$MYOX^!!#6Q4="R/$7?X?&"&GU<S
MM*##Q,W/+>@1%YH1!I\P=P@X'T.WS>(ABZ,$8Z>? ND.N]M\(WP^NH<M#A30
MHDEG7_!IG,_FZ0ALI1YH<:#='<VE-,M%T'Z1(?41*\Z;E,642DOQDN5,5H-M
MBY=9F;%/427;G<MO^"A?I5EFYS/,DVWKWM/U;14\W/];C2F(<.,.Q^>K@_[<
MWTUU39GWU<]_R[+5(MU8?0F^'38-"81?*=#M-E.JNS?SV72C$O^DP'K]-"69
M?E_9I^ER._V"KXNOT,T7-N:RU+<MN%\;MZO!3X/]L%:T^C])0GQYQIZG E=?
MU2%)6QAX/#^?/%^K)=Y$ F@G!X_L(.?:#W96S@*W/K^8-BE3\%D=@ .K3V'U
M19:0 E_N&R?@"AUCE<T>LWK]X=_VL3:56MM4Z]OGK-[8'UTY=BJZ;OEY_0O@
MJ?;C]DDJ<=\%>$QM?3=).:?/S/BSN6R>__"G^]VC>]R3:] =Z?NK7;JUVWJR
MJ?H&"'&]:#Z'=5[<NF/=%Z0N=E!V'8BAM_SSW8=<.P!);HQ,<2CFYN-7=T_;
MA)<V$[[W%=Z;$]RPDC<J%,"NF\*[W:!$8?/*VY=_I_#/5^NZUZO45]):[65[
M]^*IF^G2JX-LI<WV:ZD&UV\E8W2+#7=EBK8,MYF,UBQ<E ,O =$J]RQZ3J0-
M@0AK2V)EY$1'8/S<"!GD%CJ:"&4A&2N(9,X243 ,%Q::F.!YX:W/0_'5.NRG
M46._Q3$_CW8$I8^#BY0O<ZV*0*33H/Z+4!!%0?U[[D*A78BLV.*B7)6V=):3
MR#!:S;0"DR&",:YSQ< ^4\J%H9!HBV-^;C.6VL+19J5R=&=M\\T30[=D(:Q4
MRE-OV7/6QF%\EY:U*QF]:=.NMBN80 7?3W)540"/E%01&Y7#7$(01,X&$@OG
M7&[*TE"WQ7:&*^^C)EH7C @)<LL&59*8AU((*FB>;P&(K,>S?^V(@> 1!X8=
ML;DVY0$DU0SV4R_MIR&Y?TCNOZW<5KEC91D%"0YE<! %T;FTA)5!2B,#+<16
M7DT(FAI)"[@GA1DX)<J90!P3BGGO@I;\2))B#S>YWSO)\[Q4A#$)B\2QH-P%
M2F1.G:(JR+CM3=Q]88?D_B&Y_U&2^ZFUFHF8H[<LP/X$%T8)J8E'&*?"**GY
M%H"=YDX[:QVXS(Z"PZU@BTC%" 5>9Z$TTKAO)-P<C!P[N.3^&$KI52Y(I"6X
ML30P8F$-2>E*9G3A@KF/]1R2^P]!>NU*]'BTY/Z;V82](M_@.-VE F!K<8<2
M@(=1"31P'G0.DCU(0T09#;&>:2(9&BRERXM\"S+/>!L+J10II:7=/11L6^=8
M7MH8;=3?2)E\B/SN(:MV7Q7-,4;&BTA"7@@L"53$"G!_7,@EC=870FY5-%,A
MA&<\DMP:8"N-%83:<Z)R)8V*D>;"/#Z+'$!>[5 #L,Z,)2L$CZ4%EP1#XE8%
M8DL!4LAKIHSS5!5;\DH78*L6T9,H\U22'XDRP, \%$J7S$9F=C8P>=@4[T%:
M[>>HC@%-"PW^"E8D"P..CBE"(*:,5D?!7*!;-0 RCR#5@B#@SP@L+#'$.!&)
M@QN,$$XYNW54]] ,TO]RI9.[F\"4'8<-O I8=68. CLY\D);X'7B).*6A  [
MR(''7RH1=.34@<VWW2&5Y86AG&C,JQ &;$"+(M:P(CA6\F#SK4(_//EH%F?<
MW^JU7JXUB"N^E3LA^,GU_>'ZP!<9W#].-)]TJ&)P2[/F.[='2!CGNT(N<SNP
MD\TGT.;)'%@.A)C("7/Z0+(J"F,<EE>1G$E.A+(Y<([)"37@=,@\E#)N1]-O
MR7*;B-V_!TQ\A8G? +#[5LQ(\_*$'@8S@LGXJZG=6<9I.C4O6D^X;8N$B7^?
M0@U6]T8X:+K T+N.2Q&^LO],Z)PT(D0L);58_P=<I7,)1H,.S"OK8F&V,()O
MPX1H+_R]H^AI2]!5%V=?9D)Q\I7FSWW@NA^7R:AK'->G*>Z.Y7W%:E&]MUIN
MV?L-;9AQA>5];99HBJ&]F'X*D[;*KFLI55>)SYH'6L1;OLP0HEU0XK<-]-&O
MX@6OXZ%6S:Z#@G$+,[]D%K=@D77L5M0(U=J%+63]>'QUQV[QD+T&:P<+0O&A
M>/OE%;ASK.!&5YG505S"[[:AQ;[W*4AL,.ALYN-T;E%?'6*T2++(O\C0(\Q,
M1:3\5)): PE\A<6M[8A@$H=Q:"/1*X<@2^#9-5NNOT+MNK:YU_:-S2EW.=68
M1@@N@@C8D4Q127C)RT)J6S*Y!0MVF[ZQ?PU-$\*[MF?'Y.-?@VE"<]/VL3>9
M9)_;Q^9:LI5_O.?]8RG?4_M8FA]'_]B_OCI]_^K]USO(;O2CYE\/A_2_J>QW
MAT/&:4MG,, </(59B_V=@MQUZY M'(@D=9O9-+D>GTT=SJ;S!C^;QEB!ZD@3
M;S-@%FJH^P8_ G[!'.]_S:N+)*5;M_J3J;&CQ*(I$(*"I^FLJ:G__'?%J'R^
M?55V!IX0JH1NHNG3*^79PJ??3R9.C*[4P5&0I26XR@*/4@07I/"6QF"-]VQ'
M&0LOJ<X#*6*1@Y?"#;&YE.!MAVAE<(YRNDO^3NMU^8L'". ^P]CH3ZSY'Z0)
M[IF?UY@%WA->H_DA)%L@P8#K_KK"08@T7[4]!('S6GLD=5^;I>2(.ET&ID[7
MW;5EOL^8>@'66H7A(M-,)\:":;38#^DT:+W4"TRM\"74KL+GXM?MH_IKJCQM
MR?FZR]2>G8$UGJ72BZ;KI+-N(2>AM_81EJA.L4/:AAB#];\(DZ;MF', 44)O
M10B:(02MP29.T1%;<D5R6=!<BJASMG7B=QO3<UWHO9@V^PI+\YYGIUW% 2<'
M<5+!.7,<M9GA4;8MDK6*A@@I++<BESN*\5AI="$CJ$%GBS8)VUJ5$VS/')@+
MK&!;".OWQA#L0!ABM-(@97QY35!XESFT'5%.O+6LSEI(J'V$B*\SF+1G7#H%
M)H_"Y":/:)24$^JYH$):*]56TDHPRABG"J*!'Y"Q$,=:2,*<X]QJ4W*S53JW
MSB0; =[E(</2CJ)]-Y_2H<6!V$_[R$BXAGVTRPO+L!6W,1'8ATJB>&Y)&8S/
MHU',B[!=Z,&C]7E!8L$H(N,:HKWV1"A!G=2J-+D_?O;A!\,^-Q)OOFI<*E1/
M,;\'E&L/<?3E?91.!Z)*Z8C0S(/D4YIP3.&D5+&BV KJ[5U&ONP(C(=@78;?
M3<_"WKQ]_:V,@).RWZKV4+*J<LTI9]@;.W52-06FW>64.!/@.1'/0?6]R\-[
M9I6BYP>G&_)JU4F^"]K5MNE4.)D+)DD (0 &,ZRZ"<J2PFOE0VGS6&S!+'^/
MPY6ZJ+^?7URT 7<S?KTXP'DS:9<H57YM'@)@KLMU)P%//4R JBM.Q^,.$C6E
M!76QI"9U1U^0.G.F.<-*GL_P_9+8RX+PVX49%BW8EP^Q9IQ.]YJS$&9K#[JI
M DT8<VUSQZTH[$\ILC6=-W!K\_.SNP>+C@7E[]^R[M^?6PZX#GJO@T'$.>)#
MX)7P<C(VE]/Y;!5"4N8G^8^+RQ-0[D43GC7APJ UM .,[X>K.< DE@"6GZJF
M:ON./EN,LG8I7.O7CWW*\D1K_N-U,( M>N6U=].3DMWZWEO?R$X4^ A7_VX_
MTO#>7[OQSW^:U;OYK$,"Q70<:]P?'VNP%CSIA'),_U9/+%M85/S@*QB):SM]
M]^S7 $H3YNHJM"5\ .;+K *SI!NL%25;\,$K=W9@EBV4Y8X,)-4+--RM ]5;
M)"+,_!,AZAW-\AV0KMND@X7#[U,\<N]D7(+G+L"N+V8M5FBVX)1^$/I^N?=#
MLI!^;2VD5V@A_=G6?_K+TJAY:.8^E%6Y9_9_,)UP_SJ@?RNZU\RC&RWW^V^Z
M+#W:9RT3Y7S'NNP@XK'MO'7%PWJB>/I ^/O=(N@\]V@3]'HE'F(+#!)GD#B/
M3?A[ESBB1YN@UROQV.9N"C-NV[O>AB+2:^S=FYJV.]_M6TL,-]_%-[_7D.U>
MS\]>H+5Z88!#$X!15Q72!>.7>$?GP33S.G0%),F%;-=\]>=FXMZX,K;+C+[=
M/KS5RMT]L/)(\?9[U^VKCYY,CX&8ZSOAYE3\CY[RXTXY?9]$38^^5_ER3>=3
M8YA394[R8#F>V7*"./!$*\-861CI&=]_DNQO;0E<<VU>)%_+B_P6C",;E>7U
M)?-/?6\^O$P;5,2@(@85<2PJPN>4ECZ/Q$4MB-"@+&Q92F(]U;E64DFQ!71Q
M][3YO:N(/+\^3>NI[\W'=S"_>J R.)C[V-W+_97]_NYOF6F:@*@#-O7;3/YE
M^.+.$JHC.J#)<[S&OQS\R<%8&(R%P5C882S8,@<7T$12Y!1\0Q]+HH(5A$JF
M=$E=482M&KO;^)._X_N]BW]KPBD*LG>=&'LS>=4)L=>;U>A_[836]3AMWV=1
ME)H-]L3@<@Y:I+_$'+3(@6H1R4$3**N)*D /"*T",=@V55AKBU@$799;_69N
MXW(^OA8II!JTR -[I? 7UBT,51]+IAJJ/HZ_^N&IOO<19?@^L?S=:ZL!'[\0
MY FD"@W9<H^3+7=5$8+!UR%;MU\;8LC6'>3/8Q/^?N7/:DW]0@0-Z;O]V!.'
ME[[;\Q##/1VPMFFW5\>L/8TG#O'MPR;F$-\^T/BV\GE1&B^(%4$3(8,GQN64
MY"KWO'#44[VC9]I= =0VHMU[BF +/=*R'(+8PU'HH"KZ2\Q!51RJJI"EXI%9
MHG-EB= &+'@M+"F]""ZW0K*X=11Z=P#%^U$5!1N!8AM4Q6%FX?;\T.-P_<25
M=-IGCW^T<:2:_EXCB4^&B@/E!LH-._<0J3A0[M#B[:M):>DY#^KDKZ:!I:>O
M3B=_J/2XO=I=I\[5\^ 7?:S:-B!MNU8WKVN$U!@JF_HEGH[/R1L",0<:B/%.
M<*]"3J0-C@@G'%&Y%(0'[2E7D1N[U4[N>V+VJ;O!SC;&G=QZU8FMTXE_AT+K
M12NS_GHELO84IJ%TE&L^A&F&B/Z@2/I+S$&1'*@B";YD1D1)C&"@2$3 -I32
M$<WA TJ5-':K1/9[(OH]4B3Y2.77]]%ZZCOX\?W4O:!N#'[JPYT/]%1V#[;$
M@V:Z'K2L>D!&O6,6\7&;(6418UZZG$2O<B*XL$2+$(D)>1FC-\[0[4ZU=\Y!
M6]9/OYU.NJ#;GHP-KD=2];*8>MCBC[+%OU(^,^BK@9D/BYD'?25\%*[PX#%3
M(XDHHR**LD"4]B%G%)18<0^)</>GKP0=::D'?=6#+3Z45?79'?XP13" H:?!
MDS4RV E#$>2G<X2IZ94,.NP@_.W(_&0LCJ)05"IG2>DLF!VE-,06!OZ4G#IN
M"Q;I%O#U'CWD?27=YR.E>MD=X6!V^1$X$QO4'7SC)\W0@]HZ8K5E K>!<D^4
M<)P(J4$%&2<(EXZ&(K>T=-MJ:W^.\OYJQ>0AN,<]WN7WY2!OXV<^NIZX=[#,
M!2.^G9^'NG+PMZ\^7?OIU4\@VI_A_YD;FP;8/E9?@F^?F)Z&<+/ULJQA"WIS
MG4E/"F3E%FHS_;Y"YPZI<R<<XC;PY@9[IL& UCC1;BK_DX[0OSQCS^,X?"&^
MJD/:@(C(.3^?//=5<S$VE\_PVZU-TDX.'MF%3]H/_CEO9E6\7% YW4K"Q#^_
MF#95&KL.8Q HG\+JBRQWVY?[WD+?B^AS_SSW\&][4_6T[W?7:UMM??N<U1O[
MHYJ,8=N09F;JCI_7OP">6H6E58G[+LS'T ;IB(GPYL_,^+.Y;#JLT/O;HWO<
MDVM:+7U_M4NW=EM/-E7OQ/BUHOD<UGEQZXYU7Y"ZV$'9;IGZSC_?0>+6ML0'
M5I.Y63$N<\I=3G5)8BX<$<%+HA25A)>\+*2V)9/E/^@J4SU);.T[D?W*H.B(
M3FDIM"TX\5H;(HJH"=CCG# KC+:^<$SLI4GGKJ31I5W_JYG-:_C_![3]/L"#
M?AE/W1\_9 ',^XN4=CH/_5CWQU)B'\ZP==9X//V,QQ0=J/K\'&8/#VJR\Y:
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
MMY[LJKYY@M?+YG-8Y\6M.]9]0>IB!V6[9>H[_WP'B:\!'XG42<&,)& *%42
M!T!L$2VAI2D*9DKX_U9>WFW 1WX/G\)D'MHPU62&-L_?J]G9"U A4YC/=9 B
M:\L /'9.QE4S(V&<>A\G/KM868HU);;"[(DZ.]55$CG/$V<3'+]Y9L%.0:&S
MM0>N6#(_X;F6;.4?7X]XWL4=WJI9N/L6$B>4_[B:C?!'"!<PU?%2ZW=R-M'M
M*W0"N<Z7MML*'W9H WG^X\:(/2+"1N+ J_]Z]?9OK[+7O[_[-7OQ[NV'WT]?
M?'B?_?W-A_^=O?C;^P_O?GWU^_NEF%DQ F^'[_3-F1](;.7#BLMX 3Z1JRX2
MV,W' !(1,=_ ;T@;/8NPTY,C  ^81]CN\QH]"9\UX.<O_(@S6&4"&SAY2A,7
M1MEX^IF@W(;GM1\$-R6QKL "@,=\GDX]4 64_23)Z838@\([H._U![HC^(C:
M5&/\_:*>^KF#Y^"'QKG0-%,8JCG)WL\M.C =5 _\6,RHFS[<4G?OX#IQU62?
M06!EKI-8S2@#LH,_C1<N_9NDA9L6P&I:SPBB5V5^7B\QA<8P!R +K"20.;L,
MIC[)WL#8*\-6DPR(-1F!BP_S BH#;\"J87@)Z0EN6.5;E"&@;?U'F"UF LO1
M@A*![S8&7D 1.8(_SJ<^C!>TP3@7O%(#XK7UK)/."QZ'![?.3Z=U-JX^K9*O
MC4HLEKV!=VDBHADAO586+YM:X-?TID"^66:RBRDL9'H?8+AVE.:LNL!Y(2V"
M@4EW#T&$,),M &^N&38S+>#2@ECI)L3?@;D#W9$A+# BL&R[=&L/P"=?8*@/
MB3"][@E +> ^&!8MRN5L3[*_7:0@SM7D<1[=T*/U24WM+ V1&&<*G/6I<XE!
M-,Y@C6;+*>%44F3R)C0]R4YQT^V>-G#4;#GW^60QGL=U2&!3DQ3X-,@:P)=I
M=5,T TD(-)^UWRYXO1T/(TW(J&!_5!/@MO#E(J14JU6&7K!QAGP#S-U.\Q.P
M;%H99#5@U]IL\AK.:G6BU[P8KO 8#(-TV^>SZ?AJ(WS[[A'>#G[N].,$Y"#>
M'R:K"Y<6M)4.Z=-KI[!"STDB6;?5/#+W?_Z[8BQ_?NH<6"P^46G2A';8*8R+
M^\DD4"98X%'V'N1?^V6[>V$MT@CT.0[V=@K<KQ:O"*:2Q\$\_I9J 1,=7E<H
M'%$ )*!-9$F@^^L.(.^;D;_T\+6/Q%HP$*=#Y?,&9,4LB6L0?0&DW'\<0( P
M5WG@(9!2&$N$8))H34M2JF@*P7A1./4 YFQ[*@OO<-H )\#Z?3!?UF%2W[]<
MAKSY6LB;?R/DS;D>:<U['3U,#'8 W.*#]B:4G*B(W= +&HA2(2>%D&5.@7N,
MW>*6VP#G/B*W2#XJ^?6Y8'W@%C11&M0LH+_'EZN'&$WHM%0SNC+,DBA:$>K;
MED8V1V4-9)XTL443[6+6NXR;+F1]C<*Z,OY@_%8FVWDU]FLCM'+\Y-MAY/1C
MEQ>N*=6AI!K8#T40MR6QV+7 1B5H7EA?V+U @+ZL&C>>-F"*OXLH[$-2H=/)
M[ZU>?C%M9LVBMU+POYG+I%INBO=YD[=(2)&#3]\OGUX<AT\/7ON+_T-^.7W_
MZB6X]+_^]NKM^],/;]Z]S;['C_]ZBL2Q^/&GK5M@)I,YNI$AF:');<43.S"S
M%V[LZAGQ61B#1;LCNV+3;EP;!%$"P 7R5WD8W>6C[,W$G:P>%,+?Z-B"&_?;
M&&CT$_[\><W[7#["+G(Y_#*78PY&<74^G3?HT:\^- T&\SX%7WJ<T7PQ]69N
M_XD0O"#85V;<W6O&[8/3S2!$)[XUVD%7)7![5#:H5G#"=9A=7O]Z5%SS>NFK
M](X+#_XS>%P@%V=7\[>7-Z#PSL5<K%;[UCR]->STY4LMGUF-QPE_V .S@" &
M];I\K%O1$>F@MYK-0ECPQ?8:C% I?JHP!K& Z_X(:GBVY*QL>I'B TGGKU7N
M;'^2+""XLKD.;"*MQWRR/=)58*8.8 '4K<>)@+@+*P,C"9W?9C[#6S0G"Q_L
M-/T).OT2B9)FCYCERW/MM'08*XFQ<BE><\6!/[5N(5(?=A\)YQ?CZ64(5U?\
MO.(4+K[=VF9 N!1GF5LP1"I3IZ6HPS2.\+GXE?&?JB;4HV2LS,<8R!KA;>W
MW1*T,.JA_@33;*X<RO89/Z6(&/RRG&/W#&#%Y ZW#VH'!.$(-I,'YFK0!4^$
MW630'?L12 Q*]V/5!6@PRE!AO! <W&JRI.5)]FXROKP%-=(T5A\ SPVXN:KE
M-EMCN13T6^QW6#D,T@ E43,F*P?GVY'.KTZP%7&SZ0SVUA8^_2:<O/EDJG&R
M(Y'_XSQ%/1,3-9L\5#4'D' C:%$(X\#&<+XDHF2:Z$ -X3IR3Q6UIMQ*N/%E
MP00'7XIYQK =24&LCXZ4-!K#= QYV#),7R0B)C'YPEQ@3F2;9O-[0 X._O6T
M?IV(^:9IYAB@^<[\FQV>T:@L]4C0GN>/M:_6WWR9O1Y&.ND+1JDDS!B#>8;
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
M\)'H4B!\EBRU-4P(X_?F&@Z*8]BQ0PGK\?F.GZ9CV,X(C-13R3L8 (=-S,$
M.*R LU.2*6D9*5T.KF6A([$L#\0XR;B@3D;I>G>ZN1!G_[649OL,.1?T9.CC
M-!QP#OKF$(@YZ)O#TC=::J6X*HG-$?8]4$IT[A21D1JMB[(,VWV<'OV \][U
M#1OTS6.=<2Z[-.V&27_*\+ZWQ$-_%#?X/L#0^X0YC5+,3"ZS.KCIQPD,WF2I
M:4+7JL:M"+DL?,'? R8Q VM?9E/8\@E>^R+5Q6>QGIZGOUOH]@3DWK5S"*8>
M5W#U-#[+?J(_I\\^(?3[Y.,2\#VU?4!1.<JF=?83^_D*#GXY*.92-UF 9:T0
M&!I&K\.LJD/VN9J=3><SE(@Q5&G<Y7@G"7+\!GUX$$/\ANUZFM&2'#"A)?7\
M3N(L6UC@ Q:OW1%M 8<_@]=S<'G[3* VW&%:E?*?_ZX8E<^;[)]S_Q$_6%!K
M/FZQ\]O7A(_,#&<SKOX(, ,@CH7'FPJ& \HL!V[;:Z0N&BN#]8DIUQ%W=\K/
ME9\@<E=[P<7J2_#ML&E(4TVNZ0.7D+[7]=@)=FOK,,/3[RORIX,<WXGWO(T@
MOJ'ETF _K+7'^)\D^;X\8\]3+S4/;)QT-$*+S\\W^M-MZM%V<O#(+@;:?K"S
M25N8^.<7TZ9*8]<!38U/8?5%EE")7^Y;$W\O!.(#JJ('>]O'VE24KNVJ]?US
M5F]LD*[U7VKPUS+T^A? 5*L ^RJQWP4(K#;43DR$5W]FQI_-9=.AH=_?)MWC
MIERS?-/W5]MT:[OU9%?US;R[7C:?PSHO;MVQ[@M2%SLH^\-?>LT_R2W%FZM)
MVQUHX9=2JD-)-5&IOS"WZ*$*0VQ4@N:%]845_Z"/[@ ]'+O Z#Y@JB&LV.YV
M<H\VLQ5#[3R8!CSOIC4=DP5[?C&>7H;0V8#@E[LSL*@R4-&3T6X[><,P1$[&
M-,O6(@;M[J9S-+\FR\'@<>^_97S#H%7;MS1USD';D.7/WX<QB.6/H^QC@(U@
MQEU#2'C5"HS7M(,6(S3I%OI\T1OGQ13]+WP>_)80DM,T$V+5LIDDN@EU.(/K
M<*0W$YA:.-FU>-^Q,C_LSD>@FKK"<=@QA65$%*HDVL$/&JFDDG,6V#;"Y6UZ
M?MTVDG,[4+"OM@C+.LD!]\]N2H,D-?JP;[(/.SHL-?-S$$C)GVR9++F92T_F
MFS[F3XD[I_,&&+GY^5F6?2/=8I40/ZQ%N>[2D&Z'0+_QTO0@R#&T<-K.&7DZ
M+9QX?O7O]B,-[WVXK9U.<KH2;[]SI+X=[OCZ5]RFP=/1D/9!>["4NWNPW)68
MW]WKXU@Y^5N=6!Z!T0]H;1Z[%<N@*_J_PP9=\<C]NIZ0/+I?3KYEW[\G1/_'
M2JB[1Q)?UP#PN(D\R)2'DRFW:?3WA.C_V#;FO=5*M22]QW*IKZU9+T[*;K2
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
MB";'RICS!J.@5]?!C%LFW)I9Q\!AR=)-*^'P8*-=JS;LZY//WV!$!H7PM#V
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
M+?2-@HSW9HEH:IC2)B<EQ6YC>420QL(3GH/;);VBG*LMUZMDM#1*$%Y*CVW
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
M>S(2=S0Y]F5J##N37@OBU T6]A-P6]:HJ[WP)\W06GN=LO;J#2W+,D?&N"]
M>W$^-";<MXW)Q.R!R(][KFEOU+L9. /7L1R##_P!:#S/ \4UX(;5'[D3VQL,
M!X]T,'78&8]MK;RT\M+*2S.T5EXGK[RL7L\:34#S\)[+C;Z'515L;V*8P_[
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
MPJ/'\)+L#$;DXZ=4E..M-XY_.B(,Q"40)9OQ#)\-$I:'LO((2T0:ASF-Z2J
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
M@[9C;^\A78A0N%D#YW\T5$3'FTCQ+IKA'L33I<7*SIH\@;2*$.L*ENI34-D
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
MWL$%;R ?GN"]?;8]Z4PFMN;4@U\OJ8%2 Z4&RO8"Y<CN#.U[[$"?'J=JH-1
MJ8%2 ^6NFZ !*/N6YM0'W +=0$[5B-E>0IZ PCY%H)QT>YH['X"2S_4%9S==
M3'6GFCQ-OU/F;C'LL@ SE?%[9MO=87&M!)7HG3SO%'4HZ]5R-HKEU"OAR**Z
M967G*YYB^<\TXU1'.EQB72=9#;I\!KJ0Q8#EN_76BA)8'GO6[ZU<>3'C5-2L
M*L0GZWC)^EY>X%%Q_D1@@:QDZR2X+$@D*P<5]8>P+I:L/E@T2Y6KQ'2Y4N!'
MWXX7Z-OQ].UX=YB[.=:WX_U<*%>L&'T[GKX=[TZWX^F"8JMUVG5-L9TLJ6N*
MU=Z[=[&MTRRP=<)3T[7#=.VPQB0.ZISA]F1BZMIAQ^%:73NL62RO3YFU\Y39
MTR"A)ILFFQ;8%I%0DTV?V&S(FFGOJSU"H$_E'X=K=>VP$U&+VLO2J*%KAYTX
M:VO4T*C17M30M<,T<IP@:35R'!PY=.TP'8DZI<")CD2U1PAT[3!=.ZP=G*IK
MAS6N=MB;.*6#1KI^V&-[.OITJ*[V<-1#S%;/ZEA#7>VAZ*;=I^PU4+:7D!HH
M&PZ4_4[/TH46-5!JH-1 J8%R=PC%[(R&IF9473Y, V8S"'D"^OH4<;+7G6CN
M/&3YL-O'EV_<#[Q-?+E>JXOZ.%[ N5Y"@;JNCZ77M))AM]Q(CWV6Q1D/6:2O
MM= Z4>O$)Z(3!Y.NKM#^ )VX0R5JE-0HJ5'R=%"RWQUJ[M0HV7"4O$7&\1.1
M_@;H(TW=UE%70X)FVM8Q[<E35Z>O-BY<*$OK+C9*ZS9$)$X0Q[6+H7,-FN )
MF_:H,[)ULL%IA&HT4+:7D!HHFPV4PTEG:.HT?PV4&B@U4&J@O.'V6[,S'FN+
M4J>O:L1L""%/0&&?(E":X^Y8LZ?.7]7YJSL"TG($#40CK0S;2TBM#)NH#/L]
MG;>J,[(T2C:%D!HE&XF2@^X]ZG&?'G=JE&PT2NHDM0;I(TW=UE%70X)FVM8Q
M[<E3MPHKPE_<"463I+3J^Z;N'D*(<J[UZ*)E=>VBS^:$&/=-C'IZ+.,IXVPA
M$F1R/A5XT+X\8M]ATUK@LL.NX&&,;#R7U9 %PVNXV#]SGH!\ ";.%SP1'LMB
MAI9]_:E^\527?8=O/.$F@J>"6EPD 70 4Z*'$Y'F(16?#>,K:!6&Z>5N%L01
M6PJ>L!AD6OX%KUX)%HI+$<*SW&-QGC"?NT$89 &0AD> TU1_/\4AX:^UQN!/
M5\#<O"2X%!%SEM"S'T1B#G3 &7NB>.E=!(VX91'_.Z[@&@2E.="ZMJS#[FB?
M3#[JO[KG. _":;C0/^"I[E;)>THH4]_4L(<W8LQ/!W0@F-DHD+YO\ER(,(2'
M.NSO(A()#TE"SSUX/$BSA&<@B.S=]4)$Z6IUCR?$,%(?DSK>QCD\S^+BA@\<
M'W8 T\''C9 OXUP](ON:]+J]Y\7C+M:Q7Z3B+!6 TCP3!56DR4.O_;*YS7@9
MI(&#B+H\*UK8NG\H>QSTNO88N[Q&4N'HU%R!]M>O?OEUYXMFU[+N]=Y]7IIT
MS7'_:+WIJ>VGLW%WTC_BU(ZX9,/^X$"]Z9MP'JP@]$TX;;]?9#5@,]2WG1V(
M:[_/$B'8)_@\2\%I\L 3_,03=\9LLZ-O0--W)YX0:0]Z=^+3(*$FFR:;%M@6
MD5"33=]#VI UT]Y7>X1 WS5]'*[%K;B&. .-HGKKU*+VLC1J'!,U[I&!>_I4
MUZC16M)JU#@X:CQC;RBOIB$,WBC*:^1H+6DU<AP<.9YKY-"1J!,*G.A(5'N$
M8!7CS?[)[@0<EBE?>)@'F*0RNSO.4QYYZ3U*/+6=RKJD^'T+O#3L>,7=<I>G
MM=QEOIJ[++;D+C?D--,)'L&[!2F?]NEP72#R*$4,!L-.;Z@+GQ7=M/O4I\;)
M]A)2XV2S<;+7&?9ZFE$U3FJ<U#BI<7(G3G;ZVIS4,*EA4K.?1L?->VMZNLCX
M0Y2XKC%.0ZD753B1&N//L69.%F<\K KX-!"3M$IL+R&U2FRD2ASJ6N,'4(D:
M)35*:I0\'92T-4IJE&P\2NK"P@W21YJZK:.NA@3-M*UCVI.GKJXU+@?Q]&J-
MWR5OE@61+ ONL6>#[H!!UR&6ZLYB^#SLFL47'18G#*,>S]>JE6^I2B[KC1<-
MK]4;3T3(,UFPG+-G=K=?=EF^ $TZ"8R9Y@ /F=W>UH<6(DGC*!)AV6@QJ\[Z
M2[ D,#0C7U03KPWD//G!HY3#:TBI9[T:'6I/O?OVE0E9EYP*EF\OL%V/<C_5
MHM-?DQAK& /Y?.":#Y$;SP7[SJ]UB6E=8EK78=93J[^D2TSK$M-W\"K;?(I/
M'RW5):;;Q[6ZQ'2S6/Z8A-7%2#0@ZXJUFFQ-)9L66,UYS:H4H;VOIMJQVOMJ
M%_RVQ=[7):9/D;6UEZ51H]6HH4M,:]0X)=)JU#@X:N@2TQHY3I"T&CD.CARZ
MQ+2.1)U2X$1'HMHC!+K$M"XQW0Y.U26F&U? 8S53.9"9RMEZIG)#CJR<X#FK
M6Y#R:1\!U@4 CW)2W3([YL#6C'H2E10T3K:7D!HGFXV3D\ZD/]*,JG%2XZ3&
M28V3.Z,IX\YH<H\M>,VH!07O$7K2@*D!\Y3U]2GBI#7I:IA\"$SJXM(TE'HY
MA1,I+OW.]X5+Q5HR?LVPMD,#,4FKQ/824JO$)JI$:]"=:.[415,U2C:#D!HE
M&XJ2EN9.C9(-1TE=1[9!^DA3MW74U9"@F;9U3'ORU-6EI>4@GEYI:2SL+#;B
MDI0\NUX%FNH^N_$<R])BW=LL+A[IEX]@N65\#&,>S^D3VO7/.RP1Z4)V$BYU
MG>5=J_%99$5U9:3=.T[OI.RU@ 41\!/06*191]9>[K"W @;H!CS#A&=\XWP>
M \K]2W[QXMWK#]_?GI<;KP^=\AJ"IOD"D+"BP[ [VALAS'V-^2#+Q'Y^MF(K
MI#24K?=-GF\"_G:#4/&E*B^O<O%?_/W\_.M+*K].W,E>0%L&?7G6,$P^E?KB
MHZ/7%^_W[E>FNF]-CE;/&123V;>/UUUW/!@=]<7[#=/NCDQ=YKIE9]ST\=;V
M'!K4)0R.P[6;9:[_YB2__L>GHM0UTY78&E4919%'S?T&ZFC*[YGRFK :SEL(
MYVP3SW6-/%T X8D70/A<AEH:N)%R@KM_.C%%'U!K0O[4L-?IV_KDQ5'R^W[J
MJCP1!FX MFHUI=645E/M45/C2:<WZFE&W9>:>I1C@=H#NVFYBBR-XF9R]D+Z
M8R\[N _>0)C1ZJZ]A#P!:^L$M=QHJ'E3.V+:$6LATS: E%KZ&\)^S1#N_=9G
MN4?*P^GQYIYK6.EML 8Z847E[\(-:R"^:/767D)J]=9$]:;+?FOG2SM?K67:
M!I!22W]#V*\9PJV+K3>8/_7F5^/\KHT3R;QV(KF!**.5W+T(N;_<YQ; S!$9
M]#YT/4%%:?8[5O^QBV9J'G\D1Z^]0M  :'\D^FL]>LJD?A(LW P(V;<>-0>/
M?2C@2?&XW@ILG$LJZPP].B0U@K!:9S8^Q^#Q#R)HY4D+,1ET)N9CUR1O";-K
M)[0Y0M  C-=.J%:H6J&> );LUQNU[8XY?.RC$2WA]GV[HT^[L'?#_-9]S_R/
MG?\TG!H_+2G=L_=&I ?5E*;A3/8V%E7[.,'=\A2^2NLEDAU9[3LHJWT'93(S
M%OWV;MIB[Q9EE0-H,LX89W/!TSP1<^@%2S'[0<0C>#MD0&KH!\;M"I9''E9O
M=]TXCS(8/5LDT&FP"&%^4Q&)A(?A$G\7BTQXLNRU8+]% 7ZZR'@&S\G*SEWV
MNV S?HGC=\,<ZW1Y/./L*LAF117X6O5G1[@\3P6#8?"I'*0CPD!<0H-!QGR.
M=:1E^_7QRC+T00H4<$1V)80<T!O\.EH258),5JL769#%2=IEGZHN8"'2 &:<
M%L.  3E8<YT%\P40D\,SP(LP?7P<:!5$'K IM(,DC/,$6H 5BF%(7)*K-K9B
M2C!\F EP (U^UVKB4&]<4>;.0.R@!1ACQ21=]B$"<H;R$?BI-M5.,:M:]U[@
M^] _C"_%UF'(1,(HH*$QER^ RF'1)8X!4^?3+,G=#+@'VE2/P-.P-IDDX])%
M!J$1XPB!-C0D6'.>IB(#HK^7%PD .1+@0R![9^M29S.>%:->)/$E+$Y:6XL@
M(NK2V!(QY0GJ9UKQ[4L  ZFQ0Y=]5B7&:]ROQ")EZ2S.0P^7_S(05Y*YT0!0
MA)4K1**$,V4\A'4$FN)U"=!?I][17_YM;)FC5RG*-8P<VH(.\A 8$=87^%4U
M#E*6>#1.$@H:&-$06 H[@J%%F6+)@E/A50+' .D9,_@WAR^<%%8\5_<U(%M2
M6ZK3[=<L:*U_4G/]U0LNU;_!S/L;_)>Y(0@?3#ZX%IYLA5K@ <!X69Y23;&J
M)K]J4'<':';+ZO'T=XUVJOC\UE+?ZK%:+?DU8YH: _KA0-50_D75_:_/K%=^
M**X-+TCPHI XPD+S^3QZY07I(N3+,_QUPZ"7@X,NU1:+_.+/' 3#7Q:4HU<-
M$7FO%G%*@GTFH?-2U"=2>@;7AS;X[UJHL=TR\[!RH?N>NSFY07YFR9J !%$(
M<F.D&4\40Z_^ $Q5OVIA3.RW /TF=_(,[L/4SWAXQ9>I*H1_."'=HU"NN.#T
M>R6F&^+6$*EJ#S;/89V+5[>L>T'JP1;*JF5J)/\\H<7=ZP4MDZ-?T&+;7=N\
MUP4AYK ['HV/=A_)I#L8'N].&+-K3H[7FYY;:^?6.]3%0?J*G$<V-_45.0_V
M5O9\I\)0WZEP(*[=<J?"I^(Z!7V3PFG?SR*U1L]^(J0]Z TM3X.$FFR:;%I@
M6T1"3;:]GM[0WE=3[5CM?;4+?MMB[Q^6:_7]HR>B%K67I5'CF*BA;[G4J'%*
MI-6H<7#4>,;>S'@TO4<1Y-.GO$:.UI)6(\?!D>.Y1@X=B3JAP(F.1+5'"%8Q
MWNR?[$[ 89GRA8<)@4DJCVW%><HC+]UQE8GF5%WVJ2$G_'79IR,D2K>G2D4C
M"-G>&A2;Y#O!"A.-*-G4"$8]KG!KG-0XJ7&R/3C9C$H\C>!4#90:*#50:J#<
M$3JQ1QWKT2MHMYI3[Q%HTHBI$?.4%?8I J4U[O8T>SX )I_K"HXWU:6A,6)9
MC"@[LZQN61:P.5'I?1-#E4/SA(NETX3'K/%SK/WU;#+H3A@T'F*%,E\66&.8
M3<S^F?,$X$25QX-7\'%P]KK6MN?[Q?-=]AV^*3K";2+5]Q5/F9<$ER+"@H!
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
M'H5R9<^7?J_$=$/<&B)53=O9W(W-<UCGXM4MZUZ0>K"%LFJ9&LD_)QOHNVW
M[*UPI46(YNU/C=SW09)FTNXDVQ*^W&8ZLA=K#X(9=@[V!=FZ:%*0$;OZ2&=[
M2[CER&MV;E+8N35+E(PV,*Q@A9'SP :I+*+7TM9[ <V@?1U$!&_,$S[PG?>R
M;@!O'= =[%^^V:V*C^,W,.NZ@5Q=F17>W4 V!S4#>:/36QG+,)?UI>]O:4O9
MT%]AN$&<I^&R4PMJ;?488&Y7,@"WWI@T5M=9B(=I7.U#9#.P@;^_9:]Y]*/#
M/G?/NV!VYB$8FB(!JD##%TNPB5T9TSL'FU/O(C047#X0^_^91W);E$1DJYC%
MNU'H+FB0"%\D!2+%@/,!(@%*%[)-MN(GG=<8<FM[6WN>XV5UT-R[ZUG@X*]%
M;VM3 K +PP+FY*UVZL-&LWRQ")=%,QL"HSF[D9Q=YYJ-%550EM;U0Z?81RU]
M?\G?*A4&UU]NE]:""W)C91O;JL!%;1]CXPF$;?9B1V3DI0H8;5,;VUNM*8/5
M?:L@I=A$[, :%7)8SF193J74&&M:K\M^KV(R('L+I?Q(:"DBLVJ-S&$6LOD.
M[L+PI1+:HLMZ^"21M^W1!R0D_A<($DK%#:/&W>TTS7'O.D_2G-]@SF!@!$8I
M?!\&J*^0+ 7A-6YB?<-0E@P@H96E+*N"XS>#H!4W;+#M[LB4ZR8YK@%:HRD%
MRO"YJO]%F$N).P= !?, <W'IAUL-"?LED;GX\OZ;ZK((A*U',G<,):%1"#1$
M(S#;Q#]SO-Y4\E.:TS9RU0.VG>8@FV4K*I_B0=.0HEG11)K%2^9Q$E3._#!W
MLUQF]=TTWAGX2#@H&/,+_E)J..%1<.]]CFA2D1P<J=[S#GOAO*RH@#NAQ;Q*
MJ:GFC,/!/$*,N;HABG $*('Y@9L"ZRS9ZR_G^#@&9S''1/8A-X]?N++7BK T
M)K/;>XXAW3^Q6\R?5 'W<E T2C^,XP00Z!OB"$DYC)N#WH86HY7H:VF"=\HF
M.LP7*C<+L[\020 Y1<$,&+-7&I\P4R-&>14Q6H$*Z7%MUG7,5@Q9=R8[==;N
M;!,_8O<L(-<5EH^RFAS*KL@7L1(?<,WP #2IK;?"H>&L?*GN3/^&OH8R%2NI
M3 H)VYP!^3"H,M;A,>'1%'A:9%<"6,SL6L"GR$)6UQP\+\'OCIV4S/]K)09O
M.29BO0<U2K).0UCMO%=V;F+G>^#0DXF!-6#ZCR6=52QDQ6NY$"Y8A6KGZ&LH
M/&"DM6W"TM#=@KL+S/')4*)$Y.9S)\&;R#$W-J6 !S G9; 6G12*ESOQ)86Q
M\4T9),'^$:)CC#. 8(N4K#.\.SG'S& 6U#>9"Y]+&8_JBN9X):PSA<%D*85>
M(I"5'!\I1U+78L5D:B,&(]]- D>YCFN8=2/-F)-C;A+N2Q;&]KMKM4OY-<%]
M,WAQ"Q#>V.C+XZN95F4@K"0@Q-+8E,' QB<AK ^P(Q/[UH*SP!TQS.D6T=GU
M)^^?F4!JZ,:4@]4$BEK\!FP[>KOH=3TP6&]D(SZT!UZW6L#JMPY';*Q]&88
M@Y@6=]W9*G.[;Y^*L=$$6&*;ELEMFKTQ@(W-HG#*#(:TEL*P-:OB]J[1!I%@
M/2DZ(L>;26SUE ^S+0222A]E,W(. K'^Y5#SJ(X4Z$B!CA3<(5)PN]73N/*P
M>,(&14\CH+#NTQ\WHK 6SC@ZDS;6J3[/U@Z5=-@5("?WP+KJV]U)_6AH'4PV
M#M"M;J"X6[(ZRU>J,Z;5J^639(#UAM4IHV;Y.SI75.>*ZES1>^>*FCI75.>*
MZES1H^6*]K&6[DTAU>:;,?<,J&)@/0PPF"\C3&3SOHDO121CZNI4$EC+\A!(
MH\Z*?UW+^;@Q36MMCP.<@2U.8R@3/DN:N 4E5E-F,)$L6'E0)H^"/^E6M%NW
M&;OL/5C@N,6!/>*[RRJC3E5NX/467,J:=(1,0?7(<<$J/3[/0W)@D\J;E=D[
M5%,(%JV#@3I,6*5-E@0(X 6X72-;Y*XK0B&]HYHW7";[K!SX;JYA^<1WX=%M
M"P-Q*50('FN!@ <RH^6G3Q1AJ16;6G$O4BK'XQ8)7^!A7@)WDH-9U?K8Y:I0
M(2EP/,I$ZC3W??"HD95\"AI!F_@' [LX0K?=W5(#J,/F_ >\Z\Z$EX?2*R_B
MS)%7"Y=))H7GJ<DKGN".W[+V/3X^%R)3#$^S3[#"=$*RCTEJ($5YDL"'<*EF
M7HY1;3QN&^)6&FZKLJ)B 1AQJXX"HN\>S%7F^%HO]>%14IP7^)C\.L>=2< !
M&*;L&VL*@:^ WX/L+]2^C@I8>&).(XH3N9T$ZX$UC.0XL2X$</,/H(L'?!+&
M"]D;_A;3F;\\DH-_$F)U7Q6I%NS;"C\U"16_Y,DVYF73//!(.R%[4"F, *O8
M3:K2<5A RS++SWC0MCR"46A55#Y9H@IC*>5:UM>J*FK%M4$ ]\8JO9].B4O
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
MZ9@,61#=U)D%I<>S/BV ,P92]=;"-:[PE07,S2/"G*YWP[HBGY+'J_GPB,7
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
ML9#+( W2$.;WM26%FBW/6^WTEIL#BMS1-1LRM?U1@ *-^4"DH?SM2#0[$GM
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
MIMX&FI0C_)/SZFWB39?PS%(2A_?Y%5GB[[SPUTLFVJHP'D@BZON[:SSN1/U
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
MDAM/64M*IC<KA)=K.X%'7!NIY6O$'\S:V.FFW?MVHGF//@>!NW/8L>#Y&ES
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
M6_'5#N^%ZX<=,CXG7 5;K%.H>IVW1NAUC!M%5IJ5#HTG,@EV^& 0 ,Q66 !
MWP01[MF&;P[R>R2&.5C&2#E/$$F%;5OL#9P[@.H2=1%]+DM"</<9$V*9:$I[
MV4@Y!H)!D!HEY$'D2 TT^'4_%*,DS>/:Y)$G#&@6[7EBS!+)"W]!YVNV'8V+
M)'<S<8<(1H6\B( )L# PDB,C-O0,I6S\\!\Q/N(3L)278W5YLIDY:IG"9)D<
MODR_B!G\Z^].OC_^MP#6*F)K%9EK%8FUBE)K94?<%?7G32&0I\06!_]\I$RC
M[7SWRY"=E86$$LNLIB1A,5Q6".9#SBK"<_G =O$0SAQ*=V MV4#B05LS=> _
M'@'0%@+B!\A'RNX9^&Z(/-C!,;P%&KWL-* T> &X6F?+_A;MNKW7DBIRGAV/
M<*/#@QH DC/X"(?-KSJ,$/_'Q&@Q#%+CJ+ LX%</A<XL<5[N#?L<XG5,KKUU
M)UW(=#%(H\(ALM3$LS=#@CZ" 8;/ 3O#(/B1*]_%K_^%VQY*F?4EB2%.#3%R
M-N*64B4HQ<O4-0Z+'3*>,JP,5^*Z'/S(]<0-23%R+Q@1!&?RZ;:/9B%-LRIJ
MH=!$VRTOY#9M:PUSQM8#9[H1J$?6,F_+_9#.9-(0?]W1Q,#;9" &VO$>I:I&
M:(Q+D>\V=X,MY,5UXXR-@)(AD!Z#YZBQ49 <Y@O@.*-- N=.PGFH.?=E=IYC
MC?-<3CX_: O*W9G^JJ^L?)W\K.C:^0C!1:ML1YX?L\66#MG #T_Q.J#8*%Y[
M\<J6.J"NYS-]GCM_P1,,1J& L"$>50+PWB\K)(Y>I[[F!SZVU0B\"2U(^F:3
M?G1M@A/30LF\U&HE07Y8>NF3J>CL[$%OB#30MJH0=B>J='0/QY'DD:2/U !(
MCF#'SC8 D^0+YR]SO8_.ITYSYYZ*(B_6=1\)CX+\#)6ZM:[MY>D-P"J9'I>E
MJ./LJF:R+FC0UU[K"[E0&!/TT=^2$="%STZ[N)P'_E2+"X6W^T@SP*4"@<V@
MC2@G;ND2ZI.SE%W:)(KN[+!49?QC6I@GS@J <IYT2J+%5.7+(GXHV<?(]#IE
M!M157PZ0S3K#9D*>X[<.>S;A.^?!BCM5 *'RS>QD:>(#@-;^HAY)*A])P!@R
M@\IBN@U"CMU&!K.I6>%??:[),$@NPY6/ZF2'@^8\(R==A)&WX0A *WT,X'O.
M'07VOS'A[Q+7$AQT<OS_9/J Q8OC1?H<Y!T^(JJ= 2OB>)M0)G"'.(H(:\B]
M_%L)+ #(@"85CD_$VHO&BD#5D1S,GYLIGEN1IMI?)-QBC<Q,U7DN4W7@B*6!
M>2:_+7:SZLE4V,[5O+QS7C[)XCF=%!-&!ZDJ/!8,*SW,7IM$)*T9 AXT.4O^
M]I3>9!;[ZR2U*74IY4XZ&%9(A@OI2Q(D;44]]\:-\!LS[8Y&<GM.\:/G"Y>Y
MJ.4Z0UE>#Y+'"U\YQ2YX>9>QV ,#^UG E,^.WA).PV)=F N'PJD(;['&)_96
MW71N3@)A21AB&,1E<!"L9/(FLXRLI,O\8/A1UBW%!",FOH09XO2LX3TF(L>N
M%ZND@05@D+9JINN5-S(Z6[*.JRRM/K\.'+^;I4K30G/$J=DQNO7"0D:8-EDA
M0'58/; 7%C)1_JFML&8K+/I&.BNP91^)+3VF)Y9J/GE;V4+"!2!#WY7IAQ=(
M=XC"FNM8H8&;5X3ZN7%<K'(FP19C)\2Q9RYS93XY<:2 A+0U3]('& D9PP2V
M)37<L':&ML"?NJ#6/ SCC4"%GOON)QP]!6Y @L=^WF\^."JHK%6$#RK;I?%!
MC>)FQE1Y')@Q67M/YQ17G+PMMKW%SAK@OJ1%UZYIPJM8FQ#X)F\M4<*;9!>I
M:-?#Y%!^B)IX:>Z0BF<=/N42P!NPJS1#]E3%FYA7:CC':V_E=4J]4=2U]GQX
M[) ,)UJ%?F?01I+XX)CGJB9?5X YHRR?%12R+O,FXTSY'C_"'7R'MY")PW2P
M;A8]20YI>K8"G>^]1]^)8HKO'(_]\;%;U(DBAB0U2P$TO?"0?9@U+]02+^E2
M6Q*?IP]4,(4^9"?MHY?IJY=0%I'0^$G63-Y&[I$L_"1< S+:P;T,Z&4,QP,2
MB)P6P?'F!MWH.(65D6UEY&Z"0KCFP_'4*\="T/S@"Z!]&69:EAQ*^F%4H(LH
M,B:&0U>6%N &1PT!YUKGO$3[PL4=+L]FXL.-@A_<&HP701!:@(8&M4[".8?=
M2AD7X4-;JBRE0P7:H3886\,+FZ'+J\L%>K?V:!@=>?X,B9^".(*<.C&4A</8
MC2MM-]51%%;")M@Q ,B['<BC$3M;$#&^!;&B(U*WHCM#6Z#,CQE6M*V4C>J3
M,Y)EZE8S=9$P90&QNU$-E?,80]44@+,?L*2,&FV&V'B\@ P'T#_T%4B[_3\<
M?_AQ.H]8'\+UXO;B;KZ\NOF(YF?+JY^OEE<7]X?/87L1Q:*,_C%VP(/"3N\#
M\1YEXN+NAFMM74T@DC83.PWB4#"2RZ!V; Q]\T>FPYJA7=PZ=$%Y3K  :5*1
M+/V!5FS95?H,I ^0JT(MB1&'*'5!7MK^=<S.H*:62V\=/<W9F^!R7XGO,@V-
MST(GW'0/0^!C(#T(CT56PR2)/79,2T/Q2WX[K&;L:H)E1[,,,A]5+#N:Y0T?
MRP(PGH326*SAG;LDP4O7-S-!YX#D+7@\.56+[^+<CSS7(S'46KK'JYB*TCJM
M2RBGD*<,VB@A;KF4<M\<DBDQ!]\=]2#UB%_W?<1U*8+2L&C+DMT+)R3'Q+U5
M)O3W+-/*@\TV\'D^3D<14V(')P1MN:[Z9(B,PTL.JD;^S[7GMTZXS>+4R!\0
MT 3DVT%?WPO_"8S:YW@%N96 6LMD]'"%P3I)\"J2?P=K99\>.TD6R7&Y *)'
MGB$Q]@RI9O#GD9Q\MA<HFY\J5\"5"\6Q?).%"N5"8=D,_AQF/8C#2S,Z;; P
M+8"MS3F\;MCMK]8+?/&Q6"20=T0V!' O1T+YI((O9!64N&?462A-H$BMB+TB
M,#I)9+,EP0[C.\SC48RRB-*QVO4$Z+@DX/,!^WCM#>]H[ITK=2=*ND=4$$Z7
MD92T!S_$;4,7Q4N<("6''.YPR:ZEA8@,_ C&G_#*%S#576)%BP+3BL(69;M4
MV.),E4XP9BJ1&2,V5R0G"UX;F"['<K03!#[1A<_7%^*CAF*!AH<PG>JZI/T+
M222%1*H-J,+RL8-9FSP^Q3KJQ>N*Q"YV!?">?COS;U4OKW.)0HO4+!327NH-
M'_/%'FO1"A[SGM9NA.?^N@"3Z)/SZFWB3<\H\RI?C&>[P1WMH%5 0!2&1=N(
M,=&6>O[*VSH$JK_&XV R]<6_<NB6@3/)<4; G.\UV>'."W^]I!@K*$VHL-KI
M(F+7M//(-"%&]V@-M4\\29DI1\-A6$UV;?H3HXK3/V8(9HE@FAH.E9?)'3>'
MKD^(B@>!X7"(#.7P* Z2E\3?49W8.'PTA('5S2;ALQ]76$,F<6@P)EZ:;?A[
M1'#86EY(2YUW>,5&(SN-4EZ$GODE+H,\ AGT]O3@W"8@AP<1(=50S<!*934P
M&FL'YR5Q'MNZB;3S$H@,:O4T*IE=@!J#L9^IZLH6^Y$ZFSYP4#\<G_R LK5=
MD1S CI5W8'[E!J8JV*EQOFS.LY6:S;IT6*U F*E;# ':,.3@ANN2\$/ =6]G
MRDL?["1.C?#\>I(8] Z.,Y)E*1])FA ?]L0J]X?TR73[)!4Q[8JR\]7UPD/V
MX]*\2&_1X-^/?L [QJXDC[#%<!6(0 YH^D,!>&< O_1;<5/V]7/2B&E#F\&_
M^_Z94I8'3K@@E)P79 23A*1OMR!C/]%%0-/P"%@.O.F+(S(%9N:NZ\%U!, U
MGGOER\PZ(T2UDSU'4T=07^N(R?4K,<#A\45R+ %E4%4D;87P*23$8:,<7E?L
M^UXZKZ?2B0HF;SXL-TT)ET^GH",^ )09TGY:8<@6LI\P,3DO0RJLPS%*4CP"
M5I:B+BJ7"PE?@*C,#Y3';%Q*<U['DN*EQ]P(M;WT?(<I_NP3#D)/X*7T4+*D
M2B26<YBA5'2NG@=2$TG5-H&Y6 "28+(Z=A=,9O%!#Y-S\A_!6GL?K*G^"Z\B
M>O_B;.$O/528$@,C31_IH;FE&+V[7US>?6W\790QA1F(!M8B,&TN$3FTU;G!
M45+/K6M:MJA"-^DI9QS^>M(&7$(4I#!XGP+BLH,_-%<_.]2#X6'WNXO"BIH\
M3):DQNX\D#&F+XNY;;<"0-(A^F:_\M<!W<AP@?0#%7:+_\O4D#(&3[(^V-'4
MPPMD +.9]/JP0XKY*4Z:JL@S=I"#M.TJ+/K=E[2LI& ]DW?:&!=*5F2>_-!B
ML,48:Y.U,W%>V>T'\2@A"LTEX_@:ZZ(C&'8^@I;J]ZE<@NYW:38[P=IUV@LG
M9"0F "7E#MQV/60@ 9FI3UC=//!YA9&W8I_')UX=0B9A6CHSMS188>P*9=&!
MH+A2Y(V.@")\&*G].^"$92K1M@IGY(!9)T5<PQC = :'9)8&(AGT!2F"WPAY
MX 1V)<@GN.]YS*Q48HUP]&XRBQQ&8:8*3WW 8["E_\B&IVR$93!,Z1BC15;"
M4NNB!N9I3R(V70'177^1ZY*K9[!E<Q,Q''L=%?BF; L-!26#NK];V?*^EE3Z
MWG@A16QH<[8=<,XFI>RN>P&+;U[+[MH6 /F@S)/?*-]E-0PE?J;B'ZZHE3F@
M#32)J@(2%.-7D"S]QRM?5'I0%1\Z"G+/7J@QWU=)I!V6-54'OWNM\9V(Z'6U
M--1(Z)T:ZVM15B.9C.IE(0K(%&SAV(<J/:%3Y3&58A"BV'?92TQD4L**DSX8
MG@I%<TXQR;"PP,S:BUI9T$T<7VL6]/;S)<E494VA=T#F:_[)D)B'H]\"!CED
M(401]1[B2!G5(; ,HDL"0J"92BP8FMG$WX-7V'N&V< ,UP'Q @F<WMU&9+AW
M]"A(#X,40+LM*\!@/)-)LLNNY35F>H0 BA'HSU<\8;/;TRBIINO-6DH%[8\G
MDF4G5:T475EA)ZV$MJV&E;9 <$<)!!#QMUED!X;*HNVJ>NX;PPJ7URS'B^;M
M6!$L%Z\P=,DO?3"='7SN()!+>:DKYIFBR"501=-B"&EM?E]8EN#'_VO)QF"+
MH<J0M+M8TR=;6NM%B2:+MRA\3-(PI.Q"J8(,W<'!MV*0(E.0G0(30W"9?C2^
M./Y(FC5)FG,F[)J90AN# Z42MI2+-7_&.HDQG! \"M) 9R/.(*/E=K<RYK18
M*X:Y7M@@!\]!QIBD.'F11 >W&<&#1?$3Q!P^8Z&1,=ULL5XZKUWNZA192TII
MCZR0(BXR^BJHL.S+9]1G.4WUUK%RC25!YT(47\11"+8I)M3U!U^MD&P2VH?$
M%TFQE%)<9FAACR>F\'H1OF;GR+UB7[O_""&^XMG[Y/P24/Z2])/%(H8ZXF.A
M9##]R/+QD'BZK.:$#+P&9.+L*WN5N$>D$-2^>HG&U5#WDJ3XM97*)9V9*2S"
MK7F2TB]Z)YZ.KZV4F-'NH8C]%'HNUX\#_W3'%;2.<+L)<92B#O@J0-]:Y8.>
M>2238B]M]!JBMD/.J&>MO,,PO)49]T8I\I!X]-@<A%WQ/*8 %B*0>/B[76QM
M:5=[K$%-9R4N?"D\$X-=:;M%8D )<9G(1V7X4):*F=WAK31)+M;7K5Q\A8_,
MK<:#4^1'<6!VYRZ+4*_983Q<VW5@=@1./-T5$^CZZ):!*-IYC":T*&3,]4C0
M\KE\QPMLXG,G<CH")0O ?(,F J)#&Q&!FW-IM?GOV*%L=+(3A;/;9NI+:DB3
MDX6X!Z_P%03NBT?(=1_Q;XJ8E3"OWC@@(TX>W(_P'W#6, D2KNX[768$_B"K
M("6_,%IVQS+DWD\>LP4_X(3T##UHF$.(R;<"?#W"8B0XB!5+ 3@Z7^8BD(3W
MF<@9O# 93\9!>GFROS,Z#)Y5TU46D$E @[YTG2:K!?.2!"!+]H$P6JSA.C1+
M4]\'I%,D#%#EJ.B0YW,X+)#T[#E)L\)VB("JW:@/F$R_<'2K8/@8NNX\D.SD
M9=3*V8"S%SDP!7#>"5C/%XUH;H-_N:_7Q8CFR(!%LH=I;H/OC..WA/]9]0(,
M[AZN+,_]"<I+L?_M$\A TBS.XK(9:V>!<W7T&U1G5P..4,[!5N65OP@<6%=B
M]?,_,GT>:PS\;@=+D3]R9"V -2#7<\,]G+1'/I>WM9QJW:494CPA5<R!-P&3
M#S:J$ QNT^->Y.YAC'9B^=K-5AD+K4R1'Y6'^D_BH4EM#/!#@W8*8*1[U^%,
MXQ0*0ARM%;W;88>&7_]VEJ*_S[VL/HA>8)C?H'+<.0Y7U-L*&WNJ2H&NC7 3
M1'_%D:R>T$OEJTQ) CT28D,A-I8JU?!E<*[LV,EXD S<= VL%%^PNR 9X=Y<
M&"9K^&QAG&1A0KTP/EN8'5L81PP_F'2?*U]\QGY<T&7PTAH=*%.\& A"^ "0
MM(-RU#&%1(HE%G-&S!QU?;."->,RH'DAT,@EF1-V)*7/L%B@!"KA*4>MZ:_4
M[GV\V3ATIZ/=CT[S[X*, WM;N^*:?JFUXE9%R#LK?#V-.<]0,FN^^F6O,I\Z
MO,<P^1$TQ12N9MOO,?6*LDN4J<0!_>D@ID[4VY_);2X)#[=XV9Q[X8H$X$I(
M?S*R=C$_.+GOIGU=IGQ85?ZN^,)85B*0'C7WO<N!Q5<Z*_KJ[92AZFR+$$5N
MY?T9SN/H*:#>/[NE2DNE^/&1\E MY.<*Z:XUIBX/7(N>G AMG!UZP+9*ZXZ]
M7OTI94F98IG"G4QJ@E&.G?1X64Q=GAH %0PG'- Y2BRG3&1BHM,:>U%L8672
M5O6,L1*N4%"- +F9,;'J7'Y+&PZ5Y=>5(UBI_3HTKV5^T9RY5(W%(;%G2 XW
M/'@^1_(0\6S@+@O<S97O>L^>&SMDZ46$I[[+^@<+^I$&\79!!6Y7A#%DZ"0U
M$2Y\(1%V^%0DLHB>$--5%^>? 'Y&30KQ67$_OZ[+P,1T/C.9,614:3"F9">#
MR,<2>@6F$G9/_Q7$.&.A-8C!WCB1VZKHH5&X,3 O9?!I']K/F3T0U/X9T6Y]
M35!G]UO0>[BUC^<H<"<&NV&T+[53B"M0%*X;?CVHG1DV$*$?/LCALY"QJEIG
M);F\0+E?.J\XA%)=+5(XJV"(9#F1",A;27OLSHZ^A/G,.25>Q&S03%0S#A\R
M#+L&WP,->X;+#'B$_B8&L=?>X57@0T"1MB&"!N#XN]^'$-+KN8Q_7H8JBZ/!
M_HCI\\$O2X$I-L>J'LJBX12.L,S"V9U\>.!R9UN,92ZS,L9./KQ[^%KE]@Q^
M%<J8]$PD^CPZ8\NZ8])UJV"3E!!4%IE_D)R1#%/YJ'LG0FH$.P$M1ET\;D:0
MU:IZ<:JEJMV9U'^/K/G;S&?BDJG #A&6D4OVN[:1,?K-$ 2EK05QDL._UBY>
MEP-IG.X2*(VN&1/)4$>D&$W#4E+"P#R3B;&;/(?%!F7^)<E(.;@CA"$ZB:X9
M1(8PZ*//H:C,="$1OLTH'];TPED]H?OYW9>]3@5"187)79AH=7BCGDYJ7>V[
M;)-E(21X@5I<H4@Q [$O[ /WY/[B#*DUFC'IY.CXQQ3[>ER58,9'MHD9,LP:
MD$-A/PF".A/8_5#GB%)VGP:40N().YD=Y0 C"DR.(4H<P2C(&,:692B=U+'P
MNX/[9+)6&,F!=Z\_/LCALY Q#$E6UHJ5@+'B,+*#9\O<X @D>EX2P\7NZ0X>
MRBO_RG_&O.3#'-*X!(9##_;AJYN?+^Z75S<?T?QL>?7SU?+JXO[P.93'$9R2
M7#M20X%+^QT7/#S_:Z0'1,F(%N-I5,#&94#O\)8U?&)OOJ@V(X$+NT'4)$1S
MD0\'Q%H.I%L$N8"1,R$MK5$:G7%P%T?@/T+,^:T</ZD0=+H[8UOP&-#=8@T
M$*J%V_EUD&2!52",-&5+3[PEGLE$V+W#S]B/L0#8\?F-\!<O>CJ+V0>TP50
M\,!EQ90Z]O]N&ZS;3-D5*XGM%O@BZO[A(XE:.&HL],(&0VHT2.%0!5O4@&#Z
MM^:M2$+M>E%U3>?%(?&0\[T@(P;19CSA=4&^]'4?P$+7):GA-J%Z>F6.3(>O
M>\QK*7W$/J8.@8H<[L;S/1"C '% QO-WTO_%"#/T*,;@FI^3&D77.CA,;DF&
MT8\&H^D!K.5'@""5B%BI\,-.Z;_<B&40S@8;6O)8],7=U&3O]/W2'0D\=[-8
M0KKN@X\2LX0M%D31$U%V.!\5U653..7#FCXQ9J[+4Q>%=ED0G%(%/*]\:5H,
M90FH3F"ADA3 P@*M@V,F$05SM4<]'VGV;NVP9YP/@.'JS;><$@VOYJ=7U]SR
MA>8WY^A^N3C[K_]<7)]?W-W_'EW\]^>KY5\/E4\M)29US;G1? S'^:W"2P2T
MC:Y.<^DM9]0X>,=()DM=@3(Q( YCJDQ*728C'2[/)I(),,[#<K8FX[%B?*T9
M=ZPQ7E6\K&N1P9KJ9;:<5S>!?Q<3?')\^MW)G-)/@>NM/>Q>$J=M<9P;R$X$
M%_;)\<-W)Y!'AA15!&0/A9V,&PC8H@E;#F-KH]A:,_*#N8/ZYBME; S\([U7
M1R>II#\UQN" "^NU "34=BQ(*1(50&+VO<M<I,#O9/;1HT HM)54K>'X(EF6
M#',=C)&)T+67G9635FZ""'>.^BL(] .Z%AUT':'WYQQ6LVOE@2,-M1\F4/M8
MSD'8UJ&^\"J9"1@<>"?V=RSG!-#3(@OZBUPTDJQ7466"B]1RG:672LT@*4PS
M0_/A$5'O,0"R,N7J5Q"E?/>SSR9-0X=<.N'*<SHEL@G:2!)'C#K2Y)&@;Z>Z
MY2!,9EYHR:PKF06)*M;,KODXXR*<*I_U>8SG:_9Y_Y5]E)=L@MWR?99,:,0.
MT/LBF%.*:@,84S7D#+%!$5\"!,,B&'?0XVRDN4!4?[#9L!>6_8,I1IV^5S-]
MAD?T:\H0)6OG4^V=M\QGFN5QE?#(E#VTX6,,_J$699(S!7?M10"R(Y'R_S-X
M 577 %SK.T]<#*F0?>2P,\0&YF'1[&0G8W\A2Y)VYXEUH6I,OBQ@ 8!5(9"1
MN1'CHB>V)-P8X-I;$2VY2RW]%/MXO7])K?1]S<TH(<@<V?S, V&G(,X!="I=
M9/-!D!T<X+0G=DB*$]"AE$WFW:EM3B1R#E.<G$V7\%N#&4UR)M$FK 1-?70\
M'VZ-A7_OR$Q,]I!'' @O B5NNVGO.0+BZLIDG]&Y%VXUL@;/Q>1#<=RZ".G!
M#HSE0F_R.QCDZ_<P#'#N<L[9PPDEA>1P,PY+)'+8\="\@U5_21T(V[K?;1X"
MTC;?5-! @HB-9,Q+$KQHV3(Q8 NQLZW)(GW1W\?;+>&V-+9#W+*]9H.R&Y_=
M^QLKJ'6#,2JWC?LI8 !33D_&8,(Z'\6BI>9GAWK@C@0S6(?[4Y$1YC1;B4/=
MIFX^RV/,/V_]ZXYK'Z:,?YA3G3X?^>)XI[H"WJE#($'K4)A(BMJQGPYJ_E7F
MXV($U<$Q1/%#E!2J2*&'F]_^J1.VOK=@"*,81DI]!"$A?2_PD0Z9ZQ3P&+#N
M&:R[:=:?%>O@^T$/-E@WH'#N\ I[SUUCB@QMBVJ"!\%%3B_!@!6CJ%F+^.(>
M=B,&YB;P5SW%X"$2^(]'O,"'18BU_A@B)B^I:+R$YK!VQW[#$ 0Y^Q$( X4?
M).Q8CCP8(NQ@K) #SM"5[\90=]8A,B_I-/#=KGB1BB12N4Z<*!)4#X:=S)DK
M8VO8 ]<G0QG\F>)-LH7KJ:J"=\*,E#2F.E=B=YH"_T&'.D/BABAF2G!!-9[/
M6Q=T:U$.IZW)@X]H1$#SA!4UZ*RX1)$8>):4*&)"*I0,)"$>OE@#DXLS.-$<
MWA:''">ZJ\A=  VMR',EX\#8(^-S!E6_>?1)DCIT2X-'ZFPZ@^< 53-97M*U
M4,:\/X;(J+SHD&BHH(H7ZWZ"$T_CT/-Q*$+R%_31\;U_6C$0=V=#;H<@!'IV
M0LIJOO Y7F.FH[@#^#@5:60SJ;MG?D@I*_:]G3R0IVO\O"!B,P:48F>QOF9?
M:-N81$8 /A @,6RL'13U9K_%USB*H%2,R'KL+D%KPDA0AK*,,J/23A!AGXR1
M+Y"G;$"DYHT(WB !6? FHZS^9? X*YG?^<FAOV(15!1&?>2]@H]=O)<;1?J0
M6%%W@LQ^U315/:^![:'BZ+4M0554('CNNY]P]!2X 0D>!<!V=U&UH":D:2XZ
ME66I9+L41F9)J6 > FU,5()D#OR-3VRAR=L:#[[&V:OX2UIK8"#P(?)ZL0:_
MW8I-XESDF<@<"I7$T?D>2(:"AYD/QEF6PZF<C21EXTM8 /(;YCT+OCG)-9@_
M4LP_V>Z@*IK4X%@D?<R<'.*D,T<JF;S+R0V?:M#GTP3:^HJ=_',H+X=]M[,-
M5])!.P^3Z58]'6HI3%&H6Q74XO=YAM0LD5[I(8W'Q2C(_6,_<3QG&]]^3[R0
M+X.-!M#4 U]J9I&AB]<5]X9!7D'KQ"A!"BE:/$G!6I4:7N1#EJKI@E$+9'15
M&FME3 "TFB= S@GA<3OFK[J95PU*,R@K(+%)C%];-+TVS3N%W,_E$WO=K>6<
M\FQ3/N3!KT$Z=^'#\8<?AO0'?G)>O4V\Z6Z3EH0&-]9VGC2Q.]^F>&+=8_1)
M!E)LC)C]OKE4%T(A6MKP%WNZ(!6O3*KAL=M&YJ2_[UPQJL-DBI1P,T.BG.N[
M!%5<#3&X>S-]1]]!",EB_3D4?'?;M>1A(AR2T;&R=;TRE(J;SK!SM_A\B"R1
M+#=2:N!DCX+U$4 W<,IV\>IZ\+(IE#I;D-J],$#2<Y?$K.48F&F?*@'S*LGY
M'""W-('H_^E F2,%7.GD4F0,8 L6\0X_!^29?<RGUX'C=Q=3-3UTBH"B+2B7
M[ER00V<@!S^C&'E A!$=W/R;!3:3KHMNW__Y:+!N/;&3MD$7,*.0\@^()_FI
M%.'(28J#?BQL.'Y/^BMA/[_#D.X MF=AW_+=FA:??2_J(='"&.5(>+*3<:2%
M#)2I!LWXA.S<-&,N'LFM&RI9D'EZW<J:_4;6+7.SFPLC7#0T69A0G[MM?;,8
MYC0\5F!B7>C5"C/A>>?M*H,'[7%]LJTJE%MFF0AK24WM-'FYULH@,EI-C01\
MIA-N>LH;*<O^>CX*M-8MMH1_XL;',+A&-!C#VK956'_#P-NQA1>_?]767LH!
MR H [/]5D59[!0"&8Y4D7.Y9F'9(S^Z%'WG1[M(CF*JZFVV%8$X)<5)(T;*5
MM<JDCJR]N>?ZCFHDHVY#@1'Z9GB3W[ LDP)N<WR.52)2UQ])@$1N QJM ^(%
M$EBT:\9D4FTE&0/I09""+[7C\!^(7S(A5O>,,+WNHR!HBQ#3Z^%+:MI:"?*V
M"'T$'5M<C*YPW)FS;QU?O#^T] .=??ZT&?CGPV*KG#E;CXG8W"7F>I"R'>;J
M!$(A6Y&6)CUGG3\G,:AP(LI10:!W,A4212U?F1&G/(Y?PGJHXRK7P1R-25.Y
M4HJBU*]<AXN!/:\6ER%U\70Y$\-[H0,W7D5_<2#X&RISRS"[7L0-21PIZDEP
MH=52W;WS2";%G@FB<1;X(9-A7>&A]MU;UE?=3HNUE'L=HH."^U"<TMXZ#FXI
ML,F3H;_T)9 'PIS&#*4F(MQ QE1@B?1D4#(;VQJF\&S(H-K+@+)#O<+8#:%H
ME=:3>*9V-SCW1.=: ;$#8B?ST4O:B!%'BCH"\D:]TK/#9#'K9%*L0O&.=UO%
M*]03,VN4\OT<W(/T,7;@DL5X\4"\1X&Z(Y!XNF?\2-J,2X,XU)#@0#^V"J?W
MS2&9 G-@:97NF$MVL3D$@O:[E4.6Y)"@)_(2;)5$KDQ-^,RDNY#+=" XKEC3
M/0O[%5Z<,"3RH'H?-Y0+5+;#YG/_5!1S2"3&'+A>H?9+0LKCDK5L8V],BT8"
MW !HV2I34)B"V@FK!&(&9%+HRJ!Y&)S( U>6 3N\M^D./WK@N?2C#GF$TMV4
MT!HTCY!+&TMOTW= 2Z:P(QM@ A$^ _!)IL)@XL1W,1/>O(A=Z,\XYTG[Y/P2
M4)[D":>JNVR5#'=$8+PBWR$?$XG,4E&XRY+(96$MR $L T\@$N4/NX0QB#PD
M4=!PPE,FYFQOK<SV)H9/>[$6]2;!V"=]C!TE"D$73 E44T:A)'TX3)$L-PE)
MY8P=G)O[U1-V8RAF5PO<$98A=W2'@I.3X/GU#7 ZPDJ@CJ'Q@49?.G+(JY8N
M%O0)U'$FUK71B],YXE$<>72' (7= ,%T%!+0X; E=S=7YTG1'%3A3V3VBPVF
MCY"W2X.7Z G.E.-WC!13))&@B231P?T@TIZW#.:K?\0>Q5EYIZM)- J0I)P7
M;PZ.N90C2R*O<P.,I'I '!7:E4;A*5.^0(D0_#(.%W$40AT)R(&#0)26QS%7
MRB"1*\0XR!AH)F)>#IKO%+P^C^!Y44O@R"4(!>-!,M)!<YQW.1;P;&;5666]
MV&SJX=# KND8*9^QE::+F.G[&&![+"41*Q_X+2^EV>4$:V^ZJ,HYX5F3S(1O
MIS[AC']O^821K^_&'78H>\+9[Z0X@E[$8/!+)T)@H]J*B(<0\0CI!XS63*KD
M#D&T84\++SCEXC6&)IZ/7@+ZZ\;QPR=O*^'+19N!(YV&R\)+WSL'E9UH)6?3
MKB7SC%_P?&3QK,SCZ"F@WC^[I6B?R7<#Z,[4\^%HT@?$%4DQ="\8DC+0?'"&
MRFLA=;<JEY=$&MADVC=39&1^4@XV)J!X[F5 E\[K7[SH"6#%F(C!?M'1_5:H
M?\AS^ (#8>+R().(%\N%:"FPQ(3JL!XT\P4;#>&OGN 8JA(9P_'?E0'HVS#=
M)-%G'254;K8Q8]FLY6SF#8R)Z0] B_E:+O'JR??^$>.+UXBM+RB_%TP6DO6\
M.CF6,Q4-DL%G2 ^/]/CH;\D,D#&%+W&94NEF@"']S#&D':/&PX;7=^")L(-'
M=FP"&LEHS<6ZJ[DH$^IAT ;A.C&QB-SMP^*-%#-EW<9W'?B/2TPWRG0%@HW'
M(7I5UBWC-<+Z[VYW0>-:5SI71%$RZDQG^_+E8".CQ*IFZ^6VM"CD4-8C>7,6
M:_/UO,,$I \>&,OOO@?C[NN*7& \=(SSE.-)CJNJ717XG6P"&G EX(I=N.P<
MQ%0D%'J!R\'\^P\7N]AL2;##6&+-;-FLAQ?F!N=0O?:<)S$2$D-)$Y!XZ/&L
MU!O)T^5Y!D! UUBD! T;V/02+)^".'1\=_G"CMR.XV9S#G**3/=4RP_''[Z5
M%H$BE<9*)-?@#,M3P 9":B0DAA(HZ5_\ F2LB7S3Q7=.$YZWDF=9A-%"W4)5
M'#T@WLKK7'O5K'PN*=J\K0$D=)<\L%V*2'-2QF-M*0;YVO.QJO3961 #.0<!
M1?[*<II3GC\9=^JZGG)O2KU12GD<U3Z'=M\'Q)9)U1:*?W^<D"(F!$DTCR+J
M/<0BDBX*F,!)Q9<_V@66V!BZE3+.W69F]2HK98[*8L79@YO\)NP1:Q0&K (9
MG6+@?*^+09)UJ (-_>+7(>O&96/^Z^]^^'#\[;\)D$_U#ZI'5+\1XIG\%YM3
MOJ7Z(V^I_FP'(U1AK-\$/H#A)<!SOJO36A-HN.YO6NH),-'8_< _XG!\!@P?
M.U=)QJMK#X3>]J(HEZ$"I&>:JAC9P.>#Q4ARG9/1QY()9.I\]^AK1<E:X'2G
MJ9.19KU79%<?'^<Y]H,-.V]10 ?_WJPP)W>N3:"BQ0_KEN(UIE2^8'U&6&C*
MHP59],L;R;)E.]0BC6<JCE%W,%-Y'@>_!46&C\CY82>]9_A2A>9H5%8Y0(Y(
MFAE->BQ 4A 0X#^@:#X[!+P8B8 +?YB;$F^FI;"2Y]&D9?TR51\5B@=?K"&:
ML(,4,Q.8P\;H,U-#X'_,:$_Y#F+"J "?>H;TM).ZKC!Q)&;^V]Z'+,BU*X>
MX-"56GG^ TYF-?22W>%G[,<8X'+. I^_I1"!<Q:SQVB#:<='75(70;&*/H]R
M0FH$6S'9PLJH:\#?XU7@NW/VH]O9_B*K,2?UY05QI*E;0J@<@,/BNM,Z?PZ%
M@E-'C3(P:N, '!84.Q]Q(\T:SP!3M.O16BTICJR8&JASMT'H]5$\3NM\*10Y
M1=TBDSH11;@&KH.P4R4$Z6#@EZ<L=Q$,'S+0 Q-R8Y*\',G).R V>!W6VKSK
MLK1KB,+CL0KS) 8/,$]!6/@Y((P,X"_==4Q*5A31LR;Y&UP1]>TVR%"O3%"?
M(1X[R2>)C%G.D%[G9*)<%K7@=0?06NUOQ*V+$*6 8Y2OT4+EI+X8D'NL$(U-
M'JR5);K&400V*_&T=Q<1!+W$;6VOGGL/C)"1>$@L,O=/F)!>8 ,X)5M@ ==&
MW,.EL^*726<+^W4J_@$INK8LU[WQ1$9E)SE;[&*Y<MF5XJV]%7]$^C#]071'
MFJHE0V!_1=/F]_<7R_MISU<]%;9*FG%U4OLS'(+#.QPY4+.J*TYPXK;P^6^8
M)A("?435 ,/JR/TP)?=#,K-8(TX.:7H'P(+Y"11L"AV:E>1BDJ*.-E.#PAJW
MW1)Y+RG<W\3V+:@.NC%2DOOD^/&:?9T\REL5A>A!R$W1M8",/@ [&9$WS9&B
M/;3L.Q1SF9MNGJG.P3XID=P1!6B38GPM9 &(BMA2;^-0C^S8_OJA)V(HV'>I
M2GW$D4;N "OXEFMZE(>BB!*?$=ZP$^_0'6+<!G3X>C%:B0[6T0O4",?/F 3;
M[E%[DAXR"%K3)GIC)JVDLG_YLBB39F]$DVDO+E-%UT+5T3Y9J#3[6O"-PO-W
M+B^,!.S^DOVF[<NGJ*6P[CE!NP$2W-;4$2PE&_/Q?Q]_<WR"MH[, IZA;V?'
MQ\?PGWPXR+]!3!Y&GLBU@CO1(IQ3#TM!LFL@ T1DFIC((;-04[,,Z)B]:_$F
MYD^9F>3;205+2"*3YN%S*3=3#'1T78;F;'L!>*4-R".@V#D+W-;5-7C> *.!
M@,CP%AF-6]9[W7JC,OKTV= 6)0/'S8;,?(^=$)1#P&CM.^Y*4SX@#DAN\J,4
MY.J7J8P6HXQ[[(D-Y3B(C>J[[,GE83Z@H  0G(LW// =<&K8K!+X-_CM/V*'
MLOUF:HV/(V'P&5PAN2XPX%ZSB6/:#=2@V(X[0X*V/2B'J\N%EE[;U=3)7X=
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
MT/9;X+_D8?X\\,]_2RJ;8UP;*K3MO&@/\3AR7O#QQH$X&:%']2L6K'DY1R)
M73R4_[:FUT(@4'!NM\AKFE,? &++&H5*X=4B/9L)3^B%ON0/4U;HB37&O*C>
M^4=M]XG"'!!D)2G3I=KDK\<R(,"GGOW\%1'S0CK_#&*[99WE_!$447<+PXSM
M9N".!@$,JQ::;M_<3HK)Z(N#0%7SZ4'9&::M><A' [D$;K&%^D(B:7'TEA[(
ML3@AQZW$' KB3*HZ\='&_2/S8]06>DR+3C8)!&BM7.EF=?=:BUKJ.&&!J;4
M")#96JQ/2@Z?WPP+W-<Z\\UK-*5'(:\PTE%>FC^;W^YT82QHZEBG(;2X88-@
MN/$T&/93A:X**1L+XEQR[)+RXW=1O'/>29D\DO&"&;[14T;)-M-<!P0"B$YQ
M]J.))"%[) @@1+U_JF*T.^0>0O^/3*/WP_!E0:!G<R25%?Y3.%)5U!GQ#!!
M\<M\<HI\\HW<GDN!0(-R#Z1ZUSMAP'[8BB"0PFGI0U/1!S<&$JQB7J/:O46[
M0Y0E6 W?O>%S^:"ILZW*E,4US/-P:2\!XLQKSUZCP'<E-:#YHT$ 0Y,%/\YR
MB)L,SQ@' H"'6AU;ILBM_0YBPXQ2PI*L)MYP$.#H]N  65B32^5G-8S?K4HZ
M"8"PYL02G'H3^:1O1$*X"HAS+=.@23D/_)_G-+G08]0.56/,H6N"0$R5XL!W
M@S=&@-BTEF]0=(2]%@*!@L>XJ!N@[.@1SP#BUB<IH/DIL'WYY]]!G$*[H*!B
M*I+"-!#@$0G7:@AVEO-%P[#F'VHC<Q.FFY-=/($JGX:21[EY^5R>C)UO!R"0
M+NFH(1)GBE/-JR.Y-EZ]>G]&>(*WP?_IL34MY4D@3I!H F$:Q1^J"CYW. AP
M:FWSJLS(L@NM8KL][CP0 %:!MW,_<V%\[CP,Q/8GJ9GPKRC RY LO%E+-30_
M"P*]12IXK<"AO)1-=S (4&3UA43C@"B(SP<4!,)TC_H(&%AG-%KB6EO<P4#P
MCVGZGM8,W_LN97B1MLX9#.)4Y,\) ;T9S%MHE-8IUFZQ%IPZY+E<-[^?/0P(
M^132L+)\B([0[6PK&FO^'*IR96&VQX1!XS7E0R'&U: Z!P17/$?[](T\4,>6
M1!"=)'Y/WF 0H##4:DF'/_YXX]S3[/5,FT[(6T)7PT"<1]/_Q&UMQQ@&8OMW
M_-1TS-S9,:,AZWHV PLZ_56,D]XUB='$R+F.O.XCI=IO($Y)K4L?L,Y\1:,=
M)XE"AW9 % LLA>% SH+18!2%'HH%^3&2.3  N[_;5K>%X&U;=QB([5=[^L(N
M[U3_'<2&>6^8N4:4< ((D"H<DPLA.2"/U(G@M,!AC00!Q* 7U<),^#$6-GYQ
M/D18!WL\1"$GHM7^'<29LJ*$M4"H:F"Q-@4$6 -[^#V(2BR,M38(1-5ZPK4K
MM_ -0>DD$*"=$W02VNZ.YN2AT%5/^-!9  3(.3/FB:5<'W[Q.X@-[V+:A.]#
M;"-V1X'8?-GQI*5^4-^/$XC[#JG.!0$HIUZ#J"^Z<(9YZZM >_(<!?@(_"C>
M1?_KA)D3D\+;M33E32-3F?=@;,!B(,ZW^?JWWN>&JEFD;*-+=+ 7A;?#HMD@
M@*4N\K"JV<7(?12/! %$YU%PHZ$D)C1A-TKUV<:5ZM+#N</B,4\ER.,#/$]H
M>QR(T](J2/X6L4.T6DN  +MZR+8)@NB-O*=-\O0M%+]B%8KK%%*9!P+ <\6(
M@3:!0DV*,;Y@_MXMXF)%53XL=GY#+K-DK7RT\=?*G_U04+2__J-YO!=W\#.B
MPO&5J&)%3[\R$^<YB_>.B^X"AW1^OPX<GU$"L]\R('BU]NZ=?^-W!ID_N=OC
M*8@^BE=RY3-1<D]SE%')>!!GL?$\>D5CGG9\[SXL&)Q_+L()($"JLA;(2QC>
MF[K.(!!;5U4MOJ#W%-LOP2OZ'(7I@5T2O>=:(!!!.^/DP5F%IL'M@2! ..L+
M51RAN"ZI B!^I: XU[Q,?/9?0EKC\\G!A$5?8%&]']]-'KYR/.*&YG535)X*
MXCQKE";RMG1&@=B\4BUTD0-6:P'CIFJ1Q=:NK\.)IJC- '&.5=#M[.51+<*L
M.!4$F-V'0X7]T6Q=19GM?,.)6X0,71,H8FKY[D4-]2\H)?=&]>=S0P UM.BL
M" (I-:[EQBW:8T!L_,$/L8@I<FZ$25/=<2  R)L)G4XQPH*%>OK(H][D>?/T
M+,A=E4T" 5H58TQ)&H3O%:6>2%5IOKM,.@D$:!R;0"-X! (,04Q8,X0, IPO
MZ*U6KR:.0OR?;IY7LXU+WTY]A(_W?@K$"1*#%P6!&G&$5B XE28",*+ZON?#
M)N^V>,5'"[K45+M/M!>#URJS0/^*3]D=L??Y@$V H"Y.)8JBGY!2'I;F$B#
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
M6'?<HI$CBL-5DDH]2K9\7$E2)AH2B^EJ7#2*U )X,K&^I@)" OB[R&*9*JO
MDIJ-QKX-%XT@?HSTG#_>ENZ+1HB>M3HP:KOH!VLRX[89\5TT*D8U6OCQYE7@
M4&:RB +=4R (@HM-20M7"[<OFH94-7"5D/^B$=5+NV3E%JP"2_RD"CYZ&-6(
M?_CSLE6J46Z_3MK$*EZOZUUZC<2-5>!'2TYU'7FKQ9&0_=13:E91#4&+QEB#
MUU&>LY>4[R8VK:)@A!))L5PTJ\4.DY+Z):2MHKB&.H5Q@LZKQ9+&U2C+"%Q%
M21(E2FME>:P6,<IFST3U5VS D99N54/H:A&F(;&:&;-3%*%9&L;$Z;D%!G^^
M8+"-06'N;^D=G,'O-7,-)%H8*EE,%:2JI%7GO-M/3KL#@12N;1$BR2Z)LI 2
M8L')')"TE[G4[3'[GM=HW9X1BBY0R2&N6= :9.[5>LGNH@(%K4% Y &IM*S$
M\73@:HI>]3E\VF=MNW].(_=WP9-B_GB#S)8D4=P\[QV*CUC-B4(Q THGFJN^
M44.ON#Y2=R 0YFS=LE6>?H5GWCM>[65@J-9\_8I?=E1%H9DB50]0>ZM>*6:+
M>V!G]ND4! R(=:=&PF9+85DZ1M@*&M\5NWQ$:$C87$6<(H7)(AG*?(.ZN Q*
M.;\H:+VK08Z0AU1TZK4T<I592(W7)PRU?9K,0) T)6>XATZ,9U3Z 8F5_O8
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
M_XT)0("@KP:P64FU1&I</J*8U#-U7M2 $BY@%,A?$-%VL;6,%5^'5-PZ;U0
MF6B6M0\!63+O0908PIJPF&>!_*!_'07\(+4E&!"E(P]#P9*RTIGJ  <?3#9J
M!)<MP8>(-,9$B"6$(L^FX_NVZ^AHA[LM!9H34R60,H+3H($4B@!F.+N$LH$
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
M;G83T^G-)T]R+/&PJ\D>\J0]"AF"%CIX?02MX/V^C7#K9[T2;W"+6Z'#*Y7
MI30ZUYC ;-N62="A% O>,;+++$$$7SA34 NYW"7C'X##I2:@-I[GYYM^='RL
M/%T[)S]U@IJ0M@;@/O*9-<H^<+G$6]>![:-@J2"^#U_Q+U'\45?PH4.EIO&*
M;]7V90,=9H&,;;ARG@@,V_W7)%>'ZY4B0<.G)FR>B%L]1-ZM$X<8X@0?9G8D
M^T0>MEY]U[<'8)GP83OH&#((.J!2&?08HQ.^.8OH3ZD@M:99 JR::'K -$PR
MA&.$50?;0.1+(O:1_0TX/&J29T>>[F;Q!\/J_AOTE"^)J&'1;+^SF^F]68,
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
MBS>/$JQFOA?]Q?.FPX0E*>/2Q-!*35,<#-#GE3]83[!)>73^K_\?4$L#!!0
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
M:6-O4F1_ >?,<^D<P-<2A41C%DX$0J*$?I9=A#!BPU+<Q_]4HC>>!_ZL)"[
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
MC94R-)O;/0QH;_^-3?-X8TS9,=:1M0_D4@@%<[+&35HMZVWR=V^2?Q'L_45
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
M6B-H-PV%.@  1#P  !(              ( !     &EM9S(T-34X,C4R-E\P
M+FIP9U!+ 0(4 Q0    ( $B)J%K +XM]>7@! .B"&  1              "
M ;4Z  !T<F5X+3(P,C4P,S,Q+FAT;5!+ 0(4 Q0    ( $B)J%H ;P=3!]X
M .;^#  1              "  5VS 0!T<F5X+3(P,C4P,S,Q+GAS9%!+ 0(4
M Q0    ( $B)J%K_[XU2U0@  '4]   /              "  9.1 @!T<F5X
M+65X,S%?,2YH=&U02P$"% ,4    " !(B:A:2KP8#]X(  "&/   #P
M        @ &5F@( =')E>"UE>#,Q7S(N:'1M4$L! A0#%     @ 2(FH6H&J
M:B#4!0  OS0   T              ( !H*," '1R97@M97@S,BYH=&U02P4&
2      8 !@!S 0  GZD"

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>73
<FILENAME>trex-20250331_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2024"
  xmlns:ecd="http://xbrl.sec.gov/ecd/2024"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2024"
  xmlns:trex="http://www.trex.com/20250331"
  xmlns:us-gaap="http://fasb.org/us-gaap/2024"
  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="trex-20250331.xsd" xlink:type="simple"/>
    <context id="C_80baee2f-7e29-45b0-b70b-ac4ed431ae07">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:PerformanceBasedRestrictedStockAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-01-01</startDate>
            <endDate>2023-12-31</endDate>
        </period>
    </context>
    <context id="C_84a9dff0-8921-4b51-bd6e-5954972fb9b7">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_8d7f1229-5195-47d8-8fa9-df23f0a0b68c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="trex:AgreementAxis">trex:FifthAmendmentAndRestatedAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_8e7a9ef9-30fb-4364-9d1f-9b06b42b6548">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:SurfaceFlakingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_93a5cdf3-f382-4f23-928e-36fc0fb1d4a8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_93c9cbbc-a9c1-4b81-a782-12dd2e6a7acf">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="trex:AgreementAxis">trex:CreditAgreementSecondAmendmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-10-10</startDate>
            <endDate>2024-10-10</endDate>
        </period>
    </context>
    <context id="C_952dd5fd-f70a-4adf-8a70-3e58962bf2a6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="trex:AgreementAxis">trex:CreditAgreementSecondAmendmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-10-10</startDate>
            <endDate>2024-10-10</endDate>
        </period>
    </context>
    <context id="C_971d16a1-e6c4-4c7e-adf7-a972fcbb0bbf">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_9915ab83-de30-458e-824c-8c26ea72826b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:StockAppreciationRightsSARSMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_99f7d79c-e877-4fa5-b338-9b14b5bad898">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_9e6647df-2091-42e7-a3a1-417f8a828b33">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:ProductWarrantyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_a1adc46c-ad6d-46d9-81b6-36cb27a462ff">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_a1c92c4d-427a-4d44-be00-f1bce5512360">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:PerformanceBasedRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_a4862091-976f-417e-bd09-7de4d4cf93c2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_a5412fc4-d105-41f3-8c38-18b8d0c20227">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_a59a28f8-7444-4c8e-b5b3-6ec3f5aa21fa">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_adbf5788-67b1-46fa-b100-cc206bffbf94">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="trex:AgreementAxis">trex:CreditAgreementSecondAmendmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-10</instant>
        </period>
    </context>
    <context id="C_aecbc23d-299b-47de-8108-584ea6fc66e4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:StockAppreciationRightsSARSMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_b031ebd8-ee85-4cc0-b03c-4b2d240d49db">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_b0f907b9-5f76-4a7b-938c-3aacc09ca10d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_b108950e-4905-4cc7-8ea2-f7bbb9eea98d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:EmployeeStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_b2989125-46c1-4c05-bbdd-d8bd2b6c3c1e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_b52c11ea-f54a-4a7c-9334-a80a4881334a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_ba829936-7fa8-404a-9514-8c950eb52cdf">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_bda99a3c-d935-4091-b20f-e8e636e0aa86">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeTaxAuthorityNameAxis">us-gaap:InternalRevenueServiceIRSMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_c72848d0-e167-49ed-aee9-d59f11c79b11">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancingReceivablePortfolioSegmentAxis">us-gaap:ResidentialPortfolioSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_c84c44b6-a340-4f24-8662-14255ab724c7">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:PerformanceBasedRestrictedStockAndrestrictedStockunitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_cd01721e-3168-412e-8fae-9083688209e1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_d01351bb-f834-4793-bab7-1481202ca75e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:StockAppreciationRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_d652431e-2d22-4305-bdfc-61faa29fe0e6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">trex:TwoThousandFourteenStockIncentivePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_ddc4dbae-5041-4b42-8dc8-63e5332d6df4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:TimeBasedRestrictedStockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_de09c54a-bfa7-4fd5-9769-18acb4be47cb">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_df820518-7eeb-44b0-8e9f-5576b691afbc">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_e06b18df-a7c6-4f04-88b3-bd30896c3598">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_e3feb751-d453-475a-a7fa-eaa73967baff">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_ea205a13-9bb6-4a00-b70a-a25ec263eb02">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_ee91a715-ec00-4f31-8cae-c2482ddce973">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="trex:AgreementAxis">trex:CreditAgreementSecondAmendmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-10-10</startDate>
            <endDate>2024-10-10</endDate>
        </period>
    </context>
    <context id="C_f1fd57c9-5905-4cc5-bd50-cffe8a2ad329">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GuaranteeObligationsByNatureAxis">trex:CommercialUseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SupplyCommitmentAxis">trex:ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_f6b42be6-496b-4f49-b6d8-be98c482f21a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:TimeBasedRestrictedStockandRestrictedstockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_f743b696-54dc-4203-bd4a-0991a2693a79">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockAppreciationRightsSARSMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_f92fe0b1-93df-4ed6-9f4f-7be715202df2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:PerformanceBasedRestrictedStockAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_fc0236c7-d228-424d-acc6-7a7793eec1e2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_fc885d73-bdbe-4b1c-a129-ec6764fcad9d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_fdba3cdf-18f8-4b3e-a8cc-7b89cf63fec1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">trex:TwoThousandTwentyThreeStockRepurchaseProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-05-04</startDate>
            <endDate>2023-05-04</endDate>
        </period>
    </context>
    <context id="C_000977a8-6a3d-4ec8-8991-fa651366adfd">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">trex:EnhanceDeckingAndTranscendSelectEnhanceAndSignatureRailingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:GuaranteeObligationsByNatureAxis">trex:ResidentialUseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SupplyCommitmentAxis">trex:ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_00a7e601-2c4d-4de3-9982-eb44ea16f244">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_0586004d-8591-4787-b1d5-73f9f03270ba">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_06216a84-367d-453b-97af-0e5db4ae9937">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GuaranteeObligationsByNatureAxis">trex:ResidentialUseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SupplyCommitmentAxis">trex:ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_07abb3c3-6df5-4ba7-b094-f458952596a1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="trex:AgreementAxis">trex:FifthAmendmentAndRestatedAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="trex:CreditFacilityOneAxis">trex:SwinglineLetterOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-05-18</instant>
        </period>
    </context>
    <context id="C_086b6cb3-f29b-4298-9cfe-b908216088ce">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="trex:AgreementAxis">trex:CreditAgreementSecondAmendmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-10</instant>
        </period>
    </context>
    <context id="C_0a11d0ba-7d64-4bae-a644-803cfb6397ea">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:ProductWarrantyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_0a38ddf9-9952-4759-be86-f0e644141009">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="trex:AgreementAxis">trex:CreditAgreementSecondAmendmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-10-10</startDate>
            <endDate>2024-10-10</endDate>
        </period>
    </context>
    <context id="C_0e4bce22-8cda-4cb9-bf6d-062535f9444e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:SoftwareDevelopmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_1042da33-40cf-4172-9d13-cbe43571d3a9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="C_1189355a-db46-40c0-bc46-fe832af80406">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="trex:AgreementAxis">trex:FifthAmendmentAndRestatedAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="trex:CreditFacilityOneAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-05-18</instant>
        </period>
    </context>
    <context id="C_1444d23f-0baa-49e9-a9d3-8087a8ff104a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="trex:AgreementAxis">trex:CreditAgreementSecondAmendmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-10</instant>
        </period>
    </context>
    <context id="C_160fc5cf-e7da-4528-8901-3fb706c9d7be">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">trex:TranscendDeckingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:GuaranteeObligationsByNatureAxis">trex:ResidentialUseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SupplyCommitmentAxis">trex:ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_1c48bdbb-950a-49a6-a18d-36a11886729a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_1ed0bdaf-302b-412b-9fde-6c43971a996a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_20e88d50-db92-4dbb-b242-24b346809eca">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:PerformanceBasedRestrictedStockAndrestrictedStockunitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_21f532e7-6179-4e31-8bff-9c76efc3cee5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">trex:SelectDeckingAndUniversalFasciaMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:GuaranteeObligationsByNatureAxis">trex:ResidentialUseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SupplyCommitmentAxis">trex:ProductsSoldOnOrAfterJanuaryOneTwoThousandAndTwentyThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_224201fd-0c13-4d14-8ad7-8a27c05aadb9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="trex:AgreementAxis">trex:FifthAmendmentAndRestatedAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-05-18</instant>
        </period>
    </context>
    <context id="C_235e72a1-2df5-4423-a57c-d4fc2831663b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:ProductWarrantyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="C_236f35f2-5fcc-46c3-beb9-5a5363691b17">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:SurfaceFlakingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_2dfdc400-8163-4b10-981d-1c0fea4a7a57">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_30aa8c2f-c604-4c0f-ae59-c6e9f26b2113">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:GuaranteeObligationsByNatureAxis">trex:CommercialUseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_31b4123d-22cf-4c7f-a15b-7682f885be6d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:PerformanceBasedRestrictedStockAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-12-31</endDate>
        </period>
    </context>
    <context id="C_32cb1923-a423-4669-a0b7-d92694543929">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:ProductWarrantyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_339092ed-217a-4730-8c0d-5d5e4d97ef57">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:IndustrialRevenueBondsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_34213902-e621-4f3d-8d2c-cfc92fdbd907">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:TimeBasedRestrictedStockandRestrictedstockUnitsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_355f7954-29d9-4933-84da-527c2dfd6b80">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_36f97051-5e0f-42a6-9cd7-ae441643d13e">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_3acb3ff4-cd1b-4533-b0bb-fc9957ba3cbd">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:EmployeeStockPurchasePlanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_3bdbff76-38f1-4b53-ac1e-296051ee7de7">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_3beef847-3e50-4b98-bcde-845e6349e445">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FiniteLivedIntangibleAssetsByMajorClassAxis">us-gaap:InternetDomainNamesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_3bf96245-d0e7-450e-a3d0-eba3a5504bbe">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_3d06506b-c99b-4e55-88e5-e7f9d2fa2640">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="trex:AgreementAxis">trex:FifthAmendmentAndRestatedAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_3ee415a4-a8cf-4322-b4d4-a55cfe02fe1d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_41999b6e-97c0-4570-8068-c29729dc4fcd">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_42ca4c73-90ef-4b90-b00d-126d90c60bd0">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FinancingReceivablePortfolioSegmentAxis">us-gaap:ResidentialPortfolioSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_4380ab5c-971c-4ab9-9e80-c371ba493920">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:ProductWarrantyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="C_43c80646-4a57-4515-bf97-c18c5396b55c">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_440056c2-fe18-4915-9a26-b32c5b13d469">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_467aa8b1-b247-4454-a59e-c4039b58e300">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:SurfaceFlakingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_46f48da5-041d-4ddf-8368-9aa80a1bec5a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_479b12da-f306-4c52-8211-3463e0b72884">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">trex:SignatureRailingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:GuaranteeObligationsByNatureAxis">trex:ResidentialAndCommercialUseMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SupplyCommitmentAxis">trex:ProductsSoldPriorToJanuaryOneTwoThousandAndTwentyThreeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_49f74ea5-7da7-46af-92ee-900ced9079bf">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
        </entity>
        <period>
            <instant>2025-04-24</instant>
        </period>
    </context>
    <context id="C_4b712b3f-0832-41c7-b1a1-4b22f5f05319">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">trex:StockAppreciationRightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_4d15aea4-ff06-472f-b45a-3a2132c6ce83">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="C_4e36190e-5f50-4a3a-b077-02efb7ecc131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_4e657225-72cb-4527-a959-aed35dbd0e57">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingALoansMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="trex:AgreementAxis">trex:CreditAgreementSecondAmendmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-10-10</instant>
        </period>
    </context>
    <context id="C_510b2854-e839-4877-a3fd-5bac350b0b37">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="trex:AgreementAxis">trex:FifthAmendmentAndRestatedAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_5b5827e5-9779-4bf2-80c4-7707e58e780b">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_5c21fb3f-d14b-4d2e-abf1-74d1a4c37a9a">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_5fe36b10-f630-489b-aec6-dc7119a79c01">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
        </entity>
        <period>
            <startDate>2024-10-01</startDate>
            <endDate>2024-12-31</endDate>
        </period>
    </context>
    <context id="C_70f3b8e4-e6a4-4b5a-ac4f-c9f4a44c8cbe">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">trex:RevolvingBLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="trex:AgreementAxis">trex:CreditAgreementSecondAmendmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-10-10</startDate>
            <endDate>2024-10-10</endDate>
        </period>
    </context>
    <context id="C_70f3dfb6-222c-452b-a042-5ff8d7c900d8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</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_713035c9-88eb-4178-861f-7d66792d62fe">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:SurfaceFlakingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="C_727b1285-ee45-495e-829c-bdb87118d3d5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:ProductWarrantyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="C_74dbf428-7f53-41d2-945e-748db7ec532d">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">trex:SignatureRailingAndTranscendCladdingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:GuaranteeObligationsByNatureAxis">trex:CommercialUseMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_75b5cb2b-a5f5-4fdd-805a-247c93d565e7">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:SurfaceFlakingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="C_7c978468-c4fe-4b54-8c63-01aa42b959c2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ShareRepurchaseProgramAxis">trex:TwoThousandTwentyThreeStockRepurchaseProgramMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="C_7d9f7f54-d825-4f56-ae1e-d69927ec5cc9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:StockAppreciationRightsSARSMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="C_7e158bcd-195f-4d12-b933-d56b8ae0fe81">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001069878</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ContingentConsiderationByTypeAxis">trex:SurfaceFlakingMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ValuationAllowancesAndReservesTypeAxis">trex:SurfaceFlakingWarrantyReserveMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <unit id="U_pure">
        <measure>pure</measure>
    </unit>
    <unit id="U_UnitedStatesOfAmericaDollarsShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="U_shares">
        <measure>shares</measure>
    </unit>
    <unit id="U_USD">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="U_Retailer">
        <measure>trex:Retailer</measure>
    </unit>
    <unit id="U_Segment">
        <measure>trex:Segment</measure>
    </unit>
    <dei:CurrentFiscalYearEndDate
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_ded215b6-37cd-4991-8790-74c9fb020b2b">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalPeriodFocus
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_dcf2b160-10b6-455c-b6c6-5edda43af83c">Q1</dei:DocumentFiscalPeriodFocus>
    <dei:AmendmentFlag
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_463e3b21-f4ce-44a4-b55e-18a9bb49ea96">false</dei:AmendmentFlag>
    <dei:EntityCentralIndexKey
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_ba4d21e7-0677-44c4-a4ef-e4679251c230">0001069878</dei:EntityCentralIndexKey>
    <us-gaap:CommitmentsAndContingencies
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      id="F_b7e61823-97e7-444e-9fc4-c40e75afd10b"
      unitRef="U_USD"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      id="F_3578d316-0cf8-4ba9-8eba-9f4cac69b3e4"
      unitRef="U_USD"
      xsi:nil="true"/>
    <us-gaap:NumberOfReportableSegments
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="INF"
      id="F_e82e3e21-2405-4a65-a1b8-84024eabffa2"
      unitRef="U_Segment">1</us-gaap:NumberOfReportableSegments>
    <us-gaap:AccountingStandardsUpdateExtensibleList
      contextRef="C_5fe36b10-f630-489b-aec6-dc7119a79c01"
      id="F_293c138a-edf1-46a4-8a7f-330a4eb82af0">http://fasb.org/us-gaap/2024#AccountingStandardsUpdate202307Member</us-gaap:AccountingStandardsUpdateExtensibleList>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      id="F_e2aa5d31-7ed7-42b1-955d-2a49e48c0b78">http://www.trex.com/20250331#AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      id="F_ec91e9ce-d153-4e5e-aa4a-835f2d40fa80">http://www.trex.com/20250331#AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <us-gaap:ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration
      contextRef="C_f743b696-54dc-4203-bd4a-0991a2693a79"
      id="F_b690300c-0564-496f-a12d-3468f401e2cd">http://fasb.org/us-gaap/2024#BlackScholesMertonModelMember</us-gaap:ShareBasedPaymentArrangementValuationTechniqueExtensibleEnumeration>
    <us-gaap:OpenTaxYear
      contextRef="C_bda99a3c-d935-4091-b20f-e8e636e0aa86"
      id="F_71bdfe16-c7bd-4372-91d0-8fa8ccf132d3">2020 2021 2022 2023 2024</us-gaap:OpenTaxYear>
    <us-gaap:SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_abeb9af2-c314-4509-a5bf-4f65d81e3fad">http://www.trex.com/20250331#PresidentAndChiefExecutiveOfficerMember</us-gaap:SegmentReportingCodmIndividualTitleAndPositionOrGroupOrCommitteeNameExtensibleEnumeration>
    <dei:DocumentType
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_af0eb4e6-6525-4db8-bef3-78628cbb66b0">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_84660c06-e88b-47e8-97c3-0932c618d899">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_31f3437f-82ac-4456-ae23-5404c6195166">2025-03-31</dei:DocumentPeriodEndDate>
    <dei:DocumentFiscalYearFocus
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_20280d43-6b8b-4857-9b36-aa4bdaca32f6">2025</dei:DocumentFiscalYearFocus>
    <dei:DocumentTransitionReport
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_7367c751-d23b-4f49-8f0e-698e1c1220e4">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_a4508086-9978-4967-9190-de63ccded2c0">001-14649</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_86b0cc3c-c646-44dc-a6d2-1163eeeab120">Trex Company, Inc.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_6bffec9f-7623-4a1b-a9e5-84e4b44e2297">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_d4efb30a-8c1d-4efc-a49f-4701a3fa33a8">54-1910453</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_8b3862be-aa6f-4867-91ef-1f10542b08d6">2500 Trex Way</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_88552ce2-83ea-46fb-a2a0-26748060fc1f">Winchester</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_975f7580-0691-42cd-bc3d-a4eec98495bb">VA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_27b2ccdb-7fcd-452b-b24e-34e9780762d8">22601</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_7599f30a-fc6e-4546-97b2-2093c9df0529">540</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_eef3ec06-3aa6-4b1e-bff5-03e567c4c097">542-6300</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_fb4582a0-75bb-4aaa-92be-ff5da383b891">Common stock</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_dbd84175-6332-4ab1-ad3e-5e145290db57">TREX</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_e0c36ff8-eda4-4fb3-b6cf-2cb53a5e35c0">NYSE</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_2dc15c4d-81ed-4a3e-9a1b-4c8503ce365a">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_3d3eb7de-53fc-4978-8426-460d3378f9ec">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_c7a6eab1-68aa-4fde-a658-338e36d8c00f">Large Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_a7d91a90-5d79-4aa9-962c-03561dee110c">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_97dae8c0-4fb7-412c-9ef9-7bccd361ad8c">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_8d8391a8-eadd-4384-a8b8-207213551466">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="C_49f74ea5-7da7-46af-92ee-900ced9079bf"
      decimals="INF"
      id="F_13264a8a-5963-464c-9f54-6792744a2672"
      unitRef="U_shares">107227048</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_cae72a51-3d59-474e-9ce3-fe9ea64d4d71"
      unitRef="U_USD">339993000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_36132a3d-f7ba-40ec-9584-cd791013ba8a"
      unitRef="U_USD">373635000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_ef8a7c6c-8e36-4abf-9910-00eb11b6bf84"
      unitRef="U_USD">202262000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_74e79a5e-0f8c-4442-b6ef-171a28851c93"
      unitRef="U_USD">204023000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_191e5a15-5c8d-490f-8f03-f7443e5a8ffb"
      unitRef="U_USD">137731000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_adbc377c-fe02-4f6d-a2e8-0b56e1ad9015"
      unitRef="U_USD">169612000</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_28415fd4-d2af-419e-a4ad-2c56378cc6ea"
      unitRef="U_USD">56068000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_1fef855a-1645-4301-bfa3-5b35aff4aae5"
      unitRef="U_USD">50600000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_39086301-3947-405c-99b8-bf8eadef6acb"
      unitRef="U_USD">81663000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_2aa04700-0d6b-4993-b059-60a02119be6d"
      unitRef="U_USD">119012000</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestIncomeExpenseNet
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_33b9e11e-81d9-4924-aa03-f147f2bd8812"
      unitRef="U_USD">-76000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:InterestIncomeExpenseNet
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_4d464f85-fbab-4f28-88b0-6759f7f6de99"
      unitRef="U_USD">5000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_e0331e36-ee50-4f9e-a56d-d8b6e0d84c9b"
      unitRef="U_USD">81587000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_45ce90d3-a19c-4c18-ba8c-43606890d1ff"
      unitRef="U_USD">119017000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_633598f3-c021-4f49-86e9-86befda6176d"
      unitRef="U_USD">21153000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_5829a910-e5bd-42fb-8c66-d526d06dcc58"
      unitRef="U_USD">29947000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_07d525b7-3c73-42c7-a4dc-094ce96fb471"
      unitRef="U_USD">60434000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_6c22bdf7-2ecf-4a36-be4d-79b303734057"
      unitRef="U_USD">89070000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="2"
      id="F_3045dede-e0be-4779-b03c-3675a132f71f"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.56</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="2"
      id="F_e83205bf-6394-43f3-9fd0-891b48a9c274"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.82</us-gaap:EarningsPerShareBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="0"
      id="F_f464f011-96e5-477c-8954-fc1c67de0b8d"
      unitRef="U_shares">107180665</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="0"
      id="F_5dd4d14c-a013-4d2c-8120-e1effa4ab1fd"
      unitRef="U_shares">108640168</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="2"
      id="F_016b08e2-0fe9-4a38-bb8f-fe0ce944c23b"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.56</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="2"
      id="F_9e694fd2-1789-4c0c-a135-da6ebb536063"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.82</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="0"
      id="F_eb40adb1-e799-4ba2-b90c-9f5354c0869a"
      unitRef="U_shares">107284084</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="0"
      id="F_5617f329-21d1-4660-a328-59947893264d"
      unitRef="U_shares">108790625</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_66b513bd-477e-4434-a16a-20aa4f60bf02"
      unitRef="U_USD">60434000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_aad9c28f-589a-4359-ac80-6f8b5a0e8349"
      unitRef="U_USD">89070000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_49f129f0-d64d-4800-a244-bb69e06c4891"
      unitRef="U_USD">4963000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_0f3124c4-34e6-4d00-bb22-658da738d766"
      unitRef="U_USD">1292000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_5ed018b8-41af-4419-84ce-be513874afcc"
      unitRef="U_USD">391064000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_d183ac48-6a3b-4183-b300-115addd0afa0"
      unitRef="U_USD">88356000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_cb73f13b-6d54-45da-bc1e-3b789cff587c"
      unitRef="U_USD">176419000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_65c651f5-8c81-46be-8199-95291eee7a0c"
      unitRef="U_USD">207282000</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_62bd4521-9dfc-42c0-a378-e94ff3b7038d"
      unitRef="U_USD">19744000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_942284fb-562b-4c1d-b8be-9422354379c7"
      unitRef="U_USD">21978000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_3bbf3d12-266e-4f1f-9ce0-246082ae429f"
      unitRef="U_USD">592190000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_790deee7-16b8-4198-b0ee-20de3f624da3"
      unitRef="U_USD">318908000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_7c4d95bb-defe-4067-8347-1daec312787f"
      unitRef="U_USD">967276000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_44c72b8d-1ee6-4401-906d-a31c8439d5b0"
      unitRef="U_USD">922868000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_29dab4c5-f8b7-4032-83b1-90d4f25973ac"
      unitRef="U_USD">49976000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_3a1705f2-56e2-4235-b106-5f6118e90003"
      unitRef="U_USD">52195000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:IntangibleAssetsNetIncludingGoodwill
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_73418705-04c3-4ac4-89de-e74d6cb4682c"
      unitRef="U_USD">23529000</us-gaap:IntangibleAssetsNetIncludingGoodwill>
    <us-gaap:IntangibleAssetsNetIncludingGoodwill
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_fb6c9a19-af6b-43f8-bd6b-92cfb59776ca"
      unitRef="U_USD">22048000</us-gaap:IntangibleAssetsNetIncludingGoodwill>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_f056fc4f-81c9-4f8a-b1ef-59f49355de91"
      unitRef="U_USD">8228000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_f8946aeb-5163-4772-8eb5-cf5bf7a8cd33"
      unitRef="U_USD">8279000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_c227ea6a-966f-4750-ba33-4900ddf2bc59"
      unitRef="U_USD">1641199000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_696d3d20-8b92-4319-93ca-13c6ee8f1204"
      unitRef="U_USD">1324298000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_8f477378-f989-4c00-8118-e7944e0e6802"
      unitRef="U_USD">45576000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_6a33d22c-657d-42c5-9ee7-97d18012ad8d"
      unitRef="U_USD">61272000</us-gaap:AccountsPayableCurrent>
    <trex:AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_f56aa8f8-3d8a-4ac6-877e-1a346b27d23d"
      unitRef="U_USD">105427000</trex:AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty>
    <trex:AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_da81f983-bd6f-4f0d-abd0-3e21c66fea10"
      unitRef="U_USD">72879000</trex:AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty>
    <us-gaap:StandardProductWarrantyAccrualCurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_809a9c0b-e7e0-4812-aa6b-165adbcfad0e"
      unitRef="U_USD">6611000</us-gaap:StandardProductWarrantyAccrualCurrent>
    <us-gaap:StandardProductWarrantyAccrualCurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_dc1fea3c-ec43-4e82-8aaf-48f9e51e5e7a"
      unitRef="U_USD">5726000</us-gaap:StandardProductWarrantyAccrualCurrent>
    <us-gaap:LinesOfCreditCurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_ee7bcfbf-f78d-4d2c-9572-415a8370b91a"
      unitRef="U_USD">443947000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LinesOfCreditCurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_2c905156-ed85-4e24-9e0a-3ad2f23b82de"
      unitRef="U_USD">202600000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_c05c5ac1-4dde-47cf-9df1-c0ecfcfb12e1"
      unitRef="U_USD">601561000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_992160cd-9ad5-4e3f-893c-bca6a797ba50"
      unitRef="U_USD">342477000</us-gaap:LiabilitiesCurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_d3f9f105-c8fa-4562-b2be-df60dc137795"
      unitRef="U_USD">56032000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_18f21ef8-41da-4df1-a7d3-b7b2ad5066df"
      unitRef="U_USD">56032000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_435763f3-ec2d-4365-9a69-2d757a6464ab"
      unitRef="U_USD">39788000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_81062589-158f-4fa1-b6da-b74abdf0ad9d"
      unitRef="U_USD">41979000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:StandardProductWarrantyAccrualNoncurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_f383910c-ddf7-443a-b137-a2c0005173f7"
      unitRef="U_USD">17180000</us-gaap:StandardProductWarrantyAccrualNoncurrent>
    <us-gaap:StandardProductWarrantyAccrualNoncurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_04f34f60-a753-41f5-878e-e138751a8a97"
      unitRef="U_USD">17109000</us-gaap:StandardProductWarrantyAccrualNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_1865a74c-68b7-49c1-bcd9-048a5524edf8"
      unitRef="U_USD">16559000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_060f92ec-c883-4e3e-9396-70350fbbd265"
      unitRef="U_USD">16559000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_d885028c-30a0-4dbb-9b18-171ae98e9708"
      unitRef="U_USD">731120000</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_115e597d-78a5-49a7-af05-a54a2c16c335"
      unitRef="U_USD">474156000</us-gaap:Liabilities>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="INF"
      id="F_8d08ef9c-3cb9-4bbb-bd22-1919424ebe8e"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="INF"
      id="F_ece707ea-68f9-4a99-8247-1165322a9d13"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="INF"
      id="F_2bd1630b-acd3-4eed-a11f-4ae5a1cffbdc"
      unitRef="U_shares">3000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="INF"
      id="F_95373157-e971-4206-9756-54e30126e523"
      unitRef="U_shares">3000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesIssued
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="INF"
      id="F_4e17f5e9-0b33-4875-8178-03b383422957"
      unitRef="U_shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesIssued
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="INF"
      id="F_9afbc842-0a8d-4c3a-a776-674de057c364"
      unitRef="U_shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="INF"
      id="F_b17d1091-6206-42d6-9ea6-11dfaa847a02"
      unitRef="U_shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="INF"
      id="F_710db7a0-ba7c-47e3-8d57-94b2325e2d61"
      unitRef="U_shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockValue
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_7bec6163-930d-401f-af3f-104f52561194"
      unitRef="U_USD">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_741fea2a-d4d6-447c-b745-436ce4c9b2a3"
      unitRef="U_USD">0</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="INF"
      id="F_8a0ef79f-cb58-4468-8c0a-cfa9fb9a8a6a"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="INF"
      id="F_50f75237-a741-4be0-a3ea-576290a1c72d"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="INF"
      id="F_f7519c21-6c1a-4c47-93e9-9b5d42819cae"
      unitRef="U_shares">360000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="INF"
      id="F_aae300c8-c6ea-41ce-9a01-1a4dfeadcbb0"
      unitRef="U_shares">360000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="INF"
      id="F_35ac86ff-779f-4513-8d7c-19bc2383d9f0"
      unitRef="U_shares">141170958</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="INF"
      id="F_350319cf-005c-40f6-aa81-ac6700905470"
      unitRef="U_shares">141098251</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="INF"
      id="F_6110e492-7ace-4f64-93e1-702401d50f90"
      unitRef="U_shares">107227012</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="INF"
      id="F_701e348b-16fb-422a-8d1e-9f13417b4035"
      unitRef="U_shares">107154305</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_6ef4ec8f-a33c-4509-975e-f29544368c21"
      unitRef="U_USD">1412000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_d29dc81c-6c8c-4410-a0bf-809b1112a594"
      unitRef="U_USD">1411000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_02c770a1-bcc7-4053-916b-797da7ef9c4f"
      unitRef="U_USD">147655000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_9f07eddd-382c-4d09-a3eb-1fed673a5332"
      unitRef="U_USD">148153000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_10eb1433-d8fe-4001-91df-fccfb172664a"
      unitRef="U_USD">1622884000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_0b2387ea-26bd-424f-b9ef-0aa54f8553fc"
      unitRef="U_USD">1562450000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:TreasuryStockCommonShares
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="INF"
      id="F_542401fb-3ef5-492e-95b4-8b32281842a1"
      unitRef="U_shares">33943946</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockCommonShares
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="INF"
      id="F_4ade6a81-1d76-43d8-9006-acb76c5c0f10"
      unitRef="U_shares">33943946</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockValue
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_04b28111-59c7-4213-84c5-aef96449393a"
      unitRef="U_USD">861872000</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_2780b115-e81b-40f4-8269-7026d8c43394"
      unitRef="U_USD">861872000</us-gaap:TreasuryStockValue>
    <us-gaap:StockholdersEquity
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_878f13a2-87e6-4452-9f12-8053863aa9bf"
      unitRef="U_USD">910079000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_2f2dbf62-0842-4a6f-a551-eaf05e01d642"
      unitRef="U_USD">850142000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_daa67254-24dc-4aa5-95ae-87ea74f0a4d6"
      unitRef="U_USD">1641199000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_5745687e-7d95-4eff-887f-c7715b2ab360"
      unitRef="U_USD">1324298000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="C_43c80646-4a57-4515-bf97-c18c5396b55c"
      decimals="INF"
      id="F_51ea792b-f401-471c-b9e9-e9d2458c6bba"
      unitRef="U_shares">107154305</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="C_43c80646-4a57-4515-bf97-c18c5396b55c"
      decimals="-3"
      id="F_97bb4b99-e88e-496c-a79f-0b318de1ac7a"
      unitRef="U_USD">1411000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_3ee415a4-a8cf-4322-b4d4-a55cfe02fe1d"
      decimals="-3"
      id="F_a61e66f1-530d-40c5-95b1-293988638dc3"
      unitRef="U_USD">148153000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_2dfdc400-8163-4b10-981d-1c0fea4a7a57"
      decimals="-3"
      id="F_5be9c961-886b-4a12-ae74-d361c001d6f8"
      unitRef="U_USD">1562450000</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="C_0586004d-8591-4787-b1d5-73f9f03270ba"
      decimals="INF"
      id="F_0ab88906-8f12-41a8-b1ec-7ea22ccd5896"
      unitRef="U_shares">33943946</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="C_0586004d-8591-4787-b1d5-73f9f03270ba"
      decimals="-3"
      id="F_27c659c7-ddda-4ab9-a87e-cceeb2a8c848"
      unitRef="U_USD">-861872000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_0eed9de7-ce51-4902-92a3-014a3eeab2c9"
      unitRef="U_USD">850142000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="C_41999b6e-97c0-4570-8068-c29729dc4fcd"
      decimals="-3"
      id="F_dae30bb4-e9dd-431f-92d3-b676cbc0f94c"
      unitRef="U_USD">60434000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_47a95ada-6d29-4de2-84a3-dd22547914ca"
      unitRef="U_USD">60434000</us-gaap:NetIncomeLoss>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="C_1c48bdbb-950a-49a6-a18d-36a11886729a"
      decimals="INF"
      id="F_28eabc15-50fd-44df-a987-d69d094aabfa"
      unitRef="U_shares">6068</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_3bf96245-d0e7-450e-a3d0-eba3a5504bbe"
      decimals="-3"
      id="F_aa276299-1a52-4582-9db2-3c4e8d03943b"
      unitRef="U_USD">299000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_b38e6187-36f2-4e65-abe0-79eba70ef08c"
      unitRef="U_USD">299000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="C_1c48bdbb-950a-49a6-a18d-36a11886729a"
      decimals="INF"
      id="F_eba1be4c-1715-47db-9606-05c9cf08c32b"
      unitRef="U_shares">49949</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_3bf96245-d0e7-450e-a3d0-eba3a5504bbe"
      decimals="-3"
      id="F_50fe5140-130e-46e3-b83c-fd314a5a3852"
      unitRef="U_USD">3110000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_67042986-528d-46ba-8d44-43c185d382d2"
      unitRef="U_USD">3110000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross
      contextRef="C_1c48bdbb-950a-49a6-a18d-36a11886729a"
      decimals="INF"
      id="F_323d9dda-bc69-4a5a-b804-9124c5105e1b"
      unitRef="U_shares">116588</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="C_1c48bdbb-950a-49a6-a18d-36a11886729a"
      decimals="-3"
      id="F_edf121bb-2bf1-43d4-9270-61f0eadb6df5"
      unitRef="U_USD">1000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="C_3bf96245-d0e7-450e-a3d0-eba3a5504bbe"
      decimals="-3"
      id="F_a7053b11-01a1-4f6d-8a1b-13c129b11329"
      unitRef="U_USD">2313000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_e6e284c2-c6e8-461f-a694-803afbc8b0e1"
      unitRef="U_USD">2314000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:SharesIssued
      contextRef="C_99f7d79c-e877-4fa5-b338-9b14b5bad898"
      decimals="INF"
      id="F_c0e1109d-7293-447a-af44-6dfa4294713d"
      unitRef="U_shares">107227012</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="C_99f7d79c-e877-4fa5-b338-9b14b5bad898"
      decimals="-3"
      id="F_0a4a01f2-b621-47f7-b61f-2b686e5a29c7"
      unitRef="U_USD">1412000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_df820518-7eeb-44b0-8e9f-5576b691afbc"
      decimals="-3"
      id="F_21210c68-afed-413c-9e90-d4dade58af8b"
      unitRef="U_USD">147655000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_a1adc46c-ad6d-46d9-81b6-36cb27a462ff"
      decimals="-3"
      id="F_934566c0-84a6-4145-8ed0-fcd1e4817339"
      unitRef="U_USD">1622884000</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="C_e06b18df-a7c6-4f04-88b3-bd30896c3598"
      decimals="INF"
      id="F_ff7e9bd2-2533-4b36-895c-291e6309f160"
      unitRef="U_shares">33943946</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="C_e06b18df-a7c6-4f04-88b3-bd30896c3598"
      decimals="-3"
      id="F_490589dd-ba66-484d-871f-bcaf16817a27"
      unitRef="U_USD">-861872000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_400c87b3-eaa7-4886-8252-7f3e054afc0d"
      unitRef="U_USD">910079000</us-gaap:StockholdersEquity>
    <us-gaap:SharesIssued
      contextRef="C_b031ebd8-ee85-4cc0-b03c-4b2d240d49db"
      decimals="INF"
      id="F_478a6162-26fb-4b3c-88a8-4f853d076228"
      unitRef="U_shares">108611537</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="C_b031ebd8-ee85-4cc0-b03c-4b2d240d49db"
      decimals="-3"
      id="F_5b42101a-e42b-4344-88d2-76e4401d45c7"
      unitRef="U_USD">1410000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_ba829936-7fa8-404a-9514-8c950eb52cdf"
      decimals="-3"
      id="F_9f164f9e-16f5-410a-b665-e5c279f0305e"
      unitRef="U_USD">140157000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_440056c2-fe18-4915-9a26-b32c5b13d469"
      decimals="-3"
      id="F_ced4ab77-b984-4c2d-8ca5-d3dddaf49b50"
      unitRef="U_USD">1336058000</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="C_a5412fc4-d105-41f3-8c38-18b8d0c20227"
      decimals="INF"
      id="F_1ff96f53-f53b-47ee-9bda-c050215523bf"
      unitRef="U_shares">32363306</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="C_a5412fc4-d105-41f3-8c38-18b8d0c20227"
      decimals="-3"
      id="F_034bf186-0346-40b9-841d-443f3bcd7ef9"
      unitRef="U_USD">-760954000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_b52c11ea-f54a-4a7c-9334-a80a4881334a"
      decimals="-3"
      id="F_10feac33-e453-4e6a-9786-c55e2561e13c"
      unitRef="U_USD">716671000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="C_36f97051-5e0f-42a6-9cd7-ae441643d13e"
      decimals="-3"
      id="F_ad61c12a-aed1-41d1-b48a-e63ea197feb0"
      unitRef="U_USD">89070000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_56c14323-8f65-43b4-8b15-740981b87280"
      unitRef="U_USD">89070000</us-gaap:NetIncomeLoss>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="C_fc0236c7-d228-424d-acc6-7a7793eec1e2"
      decimals="INF"
      id="F_551d4a69-b3c8-4f0b-af4a-eba380d31805"
      unitRef="U_shares">5640</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_355f7954-29d9-4933-84da-527c2dfd6b80"
      decimals="-3"
      id="F_ff7ef244-03c7-4d6e-ac8a-4cd7fc7a1108"
      unitRef="U_USD">397000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_a97eb257-475e-4c87-9d02-ad08467e246e"
      unitRef="U_USD">397000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="C_fc0236c7-d228-424d-acc6-7a7793eec1e2"
      decimals="INF"
      id="F_3467936e-7cdc-4b1c-8313-9c292f572ade"
      unitRef="U_shares">55103</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_355f7954-29d9-4933-84da-527c2dfd6b80"
      decimals="-3"
      id="F_e53bd8f7-3775-4a6b-ae2c-ff5fdd20910c"
      unitRef="U_USD">5146000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_8f7855ea-71f3-450c-8618-9e19b43ce47b"
      unitRef="U_USD">5146000</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross
      contextRef="C_fc0236c7-d228-424d-acc6-7a7793eec1e2"
      decimals="INF"
      id="F_d7e212a6-8335-41b5-b7f7-42a40823d196"
      unitRef="U_shares">130683</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="C_fc0236c7-d228-424d-acc6-7a7793eec1e2"
      decimals="-3"
      id="F_1168fd2c-27e2-4e14-8d29-b08a69b82860"
      unitRef="U_USD">1000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="C_355f7954-29d9-4933-84da-527c2dfd6b80"
      decimals="-3"
      id="F_ad601b09-2984-446f-a2cf-24f27ade3d80"
      unitRef="U_USD">3153000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_e9b28b34-d195-442e-819f-3a835a5eb366"
      unitRef="U_USD">3154000</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensationGross>
    <us-gaap:SharesIssued
      contextRef="C_84a9dff0-8921-4b51-bd6e-5954972fb9b7"
      decimals="INF"
      id="F_a7dba340-a651-417e-8c6f-0afa4815f198"
      unitRef="U_shares">108692757</us-gaap:SharesIssued>
    <us-gaap:StockholdersEquity
      contextRef="C_84a9dff0-8921-4b51-bd6e-5954972fb9b7"
      decimals="-3"
      id="F_9091bd7d-6acf-43d2-80ec-d004912e5774"
      unitRef="U_USD">1411000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_70f3dfb6-222c-452b-a042-5ff8d7c900d8"
      decimals="-3"
      id="F_426760a6-39c7-45b6-a7dc-d05d905bf40d"
      unitRef="U_USD">138561000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_cd01721e-3168-412e-8fae-9083688209e1"
      decimals="-3"
      id="F_bec0292b-bc2c-4452-a7d0-7d5f19bc05f7"
      unitRef="U_USD">1425128000</us-gaap:StockholdersEquity>
    <us-gaap:TreasuryStockCommonShares
      contextRef="C_e3feb751-d453-475a-a7fa-eaa73967baff"
      decimals="INF"
      id="F_9def6770-003e-40e2-b845-1e242edd840e"
      unitRef="U_shares">32363306</us-gaap:TreasuryStockCommonShares>
    <us-gaap:StockholdersEquity
      contextRef="C_e3feb751-d453-475a-a7fa-eaa73967baff"
      decimals="-3"
      id="F_b2093e86-5ee5-4b16-957a-9bbe15961f19"
      unitRef="U_USD">-760954000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="C_4d15aea4-ff06-472f-b45a-3a2132c6ce83"
      decimals="-3"
      id="F_480b0a06-5397-4ee5-961c-0777396769cc"
      unitRef="U_USD">804146000</us-gaap:StockholdersEquity>
    <us-gaap:ProfitLoss
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_e25dcb06-ef6b-4b2f-8d95-2388683a44e5"
      unitRef="U_USD">60434000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_ae0ffa59-a6d0-491e-a86f-07af8f9f982d"
      unitRef="U_USD">89070000</us-gaap:ProfitLoss>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_8f846e65-8a90-4412-ae74-119e147f0109"
      unitRef="U_USD">14249000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_0570ee94-0f0b-46fa-b199-f09283e3beb8"
      unitRef="U_USD">14154000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_e7eda135-05ad-4009-bfb6-bd329c2c15f2"
      unitRef="U_USD">0</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_bd96ffca-6318-4f8b-99c9-d5f94eb0115b"
      unitRef="U_USD">-5212000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:ShareBasedCompensation
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_f92caa05-3f07-487a-afee-e4d60ec8c247"
      unitRef="U_USD">2313000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_266127fd-e4d1-43a5-856b-1fbcc6e32511"
      unitRef="U_USD">3155000</us-gaap:ShareBasedCompensation>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_80c504be-2529-4f97-8cb5-c2858723df2e"
      unitRef="U_USD">57000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_10104bb3-cecb-4b0d-aa57-59346776b07e"
      unitRef="U_USD">-2122000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_846adafd-aa27-4d15-843e-a4b19f4e82d5"
      unitRef="U_USD">-117000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_83470722-5fa4-412b-a82b-7a9c9ca5929c"
      unitRef="U_USD">-121000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_1a7c8499-2eff-441e-a116-4e9a5fef3631"
      unitRef="U_USD">302708000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_305d929e-5d40-4cc0-ae4a-1494749d9d34"
      unitRef="U_USD">332333000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_0d808266-9b5f-4842-8b6f-72c9ffe57212"
      unitRef="U_USD">-30863000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_cb88856b-801a-44ce-bfdb-5ff1112de873"
      unitRef="U_USD">16796000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_a9a28549-cc4f-432c-88c5-bee058bdf2e8"
      unitRef="U_USD">-2161000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_c3b61471-7228-43b5-a7db-7bad49fc803d"
      unitRef="U_USD">319000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_6245bf89-010d-4d8a-ad08-fc865fa1667e"
      unitRef="U_USD">4187000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_f0895acb-23d5-4c2e-b33b-984433ba08b4"
      unitRef="U_USD">26238000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_42969d7a-3d64-42bc-84ce-2c0afbf940e4"
      unitRef="U_USD">15278000</us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_48cd29cb-0d8e-4cb0-bbe9-085c06ec45e3"
      unitRef="U_USD">12041000</us-gaap:IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities>
    <us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_6c840056-4122-4698-ac51-2cb401d88b61"
      unitRef="U_USD">19150000</us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable>
    <us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_e95cdd3a-4374-408f-8175-827b5ae9b398"
      unitRef="U_USD">33715000</us-gaap:IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_db8d83de-6aaa-4e8f-8c7a-c01543eea42b"
      unitRef="U_USD">-154013000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_13dae597-50d1-4492-a21f-0a59f1852c95"
      unitRef="U_USD">-174044000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_d9ece2c9-6dea-497c-955b-0ede749ca9cb"
      unitRef="U_USD">79486000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_88ccafb8-26ff-4495-99a7-5021ef161177"
      unitRef="U_USD">37720000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquireIntangibleAssets
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_eac0e3dd-66ea-4b63-b1ce-9435f1914757"
      unitRef="U_USD">635000</us-gaap:PaymentsToAcquireIntangibleAssets>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_78047386-6a8f-4203-8b5f-1b280810f5b2"
      unitRef="U_USD">156000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_dd6c1d5b-8db1-453c-b061-a05699d3fc06"
      unitRef="U_USD">106000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_de7ccd86-3f12-42af-9d98-a34544985340"
      unitRef="U_USD">-79965000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_6b7abbba-3a3f-477e-8f95-556bc8278bc5"
      unitRef="U_USD">-37614000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromLinesOfCredit
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_58d3bcca-f913-4c71-8c11-f250d1658652"
      unitRef="U_USD">257047000</us-gaap:ProceedsFromLinesOfCredit>
    <us-gaap:ProceedsFromLinesOfCredit
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_4f6684c9-904e-4f09-bc41-de8ad3179b09"
      unitRef="U_USD">258500000</us-gaap:ProceedsFromLinesOfCredit>
    <us-gaap:RepaymentsOfLinesOfCredit
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_5ea15473-4057-4921-8043-d5069fa45c53"
      unitRef="U_USD">15700000</us-gaap:RepaymentsOfLinesOfCredit>
    <us-gaap:RepaymentsOfLinesOfCredit
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_d73dbd24-ce56-423c-aaa6-5e8704ea3bd6"
      unitRef="U_USD">41000000</us-gaap:RepaymentsOfLinesOfCredit>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_c17160e8-5554-4fc0-ab5d-9e6e5fd1e94f"
      unitRef="U_USD">4008000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_3476d7df-7b10-4547-9ee1-c68ea74d0e99"
      unitRef="U_USD">5145000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_0bd81937-b6c0-4a82-b447-5752438df4c5"
      unitRef="U_USD">300000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions>
    <us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_0195f8b9-7231-4b4e-8c07-35142c814114"
      unitRef="U_USD">397000</us-gaap:ProceedsFromIssuanceOfSharesUnderIncentiveAndShareBasedCompensationPlansIncludingStockOptions>
    <trex:PaymentsForProceedsFromFinancingCosts
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_081a878b-9a67-464a-9e97-bf1129fd1831"
      unitRef="U_USD">-10000</trex:PaymentsForProceedsFromFinancingCosts>
    <trex:PaymentsForProceedsFromFinancingCosts
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_24069871-b765-4c47-9977-45bff3847b5e"
      unitRef="U_USD">0</trex:PaymentsForProceedsFromFinancingCosts>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_28652354-e7a4-4630-975e-71de6eaaf202"
      unitRef="U_USD">237649000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_1a06c413-dfe9-4a84-9e3f-b63aa802de4b"
      unitRef="U_USD">212752000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_bdf2cd4c-2572-43b4-91d5-97ac2e9aeb01"
      unitRef="U_USD">3671000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_31ed6b14-630f-40b9-add8-5cae555f1925"
      unitRef="U_USD">1094000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_c5af05e6-dcf5-45e8-9a5d-b981b441a832"
      unitRef="U_USD">1292000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="C_b52c11ea-f54a-4a7c-9334-a80a4881334a"
      decimals="-3"
      id="F_517d1efd-f2e9-484b-9aa8-80091f2608fd"
      unitRef="U_USD">1959000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_45ca49d1-a3d9-4a99-89b7-16fd2d38af1a"
      unitRef="U_USD">4963000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="C_4d15aea4-ff06-472f-b45a-3a2132c6ce83"
      decimals="-3"
      id="F_69461493-3a0a-4036-94b8-44e86dcced80"
      unitRef="U_USD">3053000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:InterestPaidNet
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_3ea93f31-9e8b-4d54-aee9-191138437eed"
      unitRef="U_USD">0</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_7f239333-f96a-43fb-b376-55a90cd86ac3"
      unitRef="U_USD">0</us-gaap:InterestPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_4bd90991-ae1d-42b0-8937-b760ecabbfde"
      unitRef="U_USD">2003000</us-gaap:IncomeTaxesPaidNet>
    <us-gaap:IncomeTaxesPaidNet
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_93278c8f-5090-4f74-a9bc-d0f05634623a"
      unitRef="U_USD">1444000</us-gaap:IncomeTaxesPaidNet>
    <trex:CapitalExpendituresInAccountsPayableAndAccruedExpenses
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_ee840f67-4887-4365-8d89-146ab9b859f3"
      unitRef="U_USD">20834000</trex:CapitalExpendituresInAccountsPayableAndAccruedExpenses>
    <trex:CapitalExpendituresInAccountsPayableAndAccruedExpenses
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_50c47efd-8fa3-4753-ad36-2cb5053ea8ba"
      unitRef="U_USD">851000</trex:CapitalExpendituresInAccountsPayableAndAccruedExpenses>
    <us-gaap:NatureOfOperations
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_98fd6ad4-679b-4885-acf7-373f293086d6">&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;1.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;BUSINESS AND ORGANIZATION  &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Trex Company, Inc. (Trex or Company), is the world&#x2019;s largest manufacturer of high-performance, low-maintenance wood-alternative decking and railing products and a leader in outdoor living products and accessories, marketed under the brand name Trex&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#xae;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, with more than 30 years of product experience. A majority of its products are manufactured in a proprietary process that combines reclaimed wood fibers and scrap polyethylene. The Company is incorporated in Delaware. The principal executive offices are located at 2500 Trex Way, Winchester, Virginia 22601, and the telephone number at that address is (540) 542-6300. The Company operates in a &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="-sec-ix-hidden:F_e82e3e21-2405-4a65-a1b8-84024eabffa2;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;single&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; reportable segment.&lt;/span&gt;&lt;/p&gt;</us-gaap:NatureOfOperations>
    <us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_baa3e67a-f2f9-408e-bb8c-ff34c1de0a7d">&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;2.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;BASIS OF PRESENTATION &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with accounting principles generally accepted in the United States for interim financial information and U.S. Securities and Exchange Commission instructions to Form 10-Q and Article 10 of Regulation S-X and, accordingly, the accompanying unaudited condensed consolidated financial statements do not include all of the information and notes required by accounting principles generally accepted in the United States for complete financial statements. In the opinion of management, all adjustments (consisting of normal and recurring adjustments, except as otherwise described herein) considered necessary for a fair presentation have been included in the accompanying unaudited condensed consolidated financial statements. Certain reclassifications have been made to prior period balances to conform to current year presentation. The unaudited condensed consolidated financial statements include the accounts of the Company for all periods presented.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The unaudited consolidated results of operations for the three months ended March 31, 2025, are not necessarily indicative of the results that may be expected for the fiscal year ending December 31, 2025. The Company&#x2019;s results of operations are affected by a number of factors, including, but not limited to, the cost to manufacture and distribute products, cost of raw materials, inflation, tariffs, consumer spending and preferences, interest rates, the impact of any supply chain disruptions, economic conditions, and/or any adverse effects from global health pandemics and geopolitical conflicts.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;These unaudited condensed consolidated financial statements should be read in conjunction with the audited consolidated financial statements and notes thereto included in the Annual Report of Trex Company, Inc. on Form 10-K for the year ended December 31, 2024, as filed with the U.S. Securities and Exchange Commission.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;  &lt;/span&gt;&lt;/p&gt;</us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock>
    <us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_36f5d767-618a-4c31-8619-ce6880874a90">&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;3.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;RECENTLY ADOPTED ACCOUNTING STANDARDS&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:36pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;In November 2023, the Financial Accounting Standards Board (FASB) issued &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="-sec-ix-hidden:F_293c138a-edf1-46a4-8a7f-330a4eb82af0;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Accounting Standards Update (ASU) No. 2023-07&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, &#x201c;Segment Reporting (Topic 280): Improvements to Reportable Segment Disclosures.&#x201d; The guidance requires disclosure of significant segment expenses which are regularly provided to the chief operating decision maker (CODM), the composition of and amount of other segment items, the CODM&#x2019;s title and position within the organization, and how the CODM uses the reported measure(s) of segment&#x2019;s profit or loss to assess the performance of the segment. In addition, on an interim basis, all segment profit or loss and asset disclosures currently required on an annual basis must be reported, as well as those required by Topic 280. The guidance allows for multiple measures of a segment&#x2019;s profit or loss to be reported. Entities which have a single reportable segment must apply Topic 280 in its entirety. The guidance was effective for fiscal years beginning after December 15, 2023, and for interim periods beginning after December 15, 2024. Early adoption was permitted. Entities are required to apply the amendments of this update retrospectively for all prior periods presented in the financial statements. The Company &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;adopted&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; the standard in the quarterly period ended December 31, 2024. The Company applied the standard retrospectively and accordingly, prior periods were adjusted. Adoption of this guidance &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;did not impact&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; consolidated results of operations and financial position.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock>
    <us-gaap:ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      id="F_47441587-6799-4c22-aba5-fbb812cd9587">true</us-gaap:ChangeInAccountingPrincipleAccountingStandardsUpdateAdopted>
    <us-gaap:ChangeInAccountingPrincipleAccountingStandardsUpdateImmaterialEffect
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      id="F_8282d8dd-7c7a-4b43-bbb0-62de3c71aaef">true</us-gaap:ChangeInAccountingPrincipleAccountingStandardsUpdateImmaterialEffect>
    <trex:DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_f2d16d0b-f4a0-4072-86f6-447099bd6811">&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;4.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;NEW ACCOUNTING STANDARDS NOT YET ADOPTED&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:36pt;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;In November 2024, the FASB issued ASU No. 2024-03, &#x201c;Income Statement &#x2013; Reporting Comprehensive Income &#x2013; Disaggregation Disclosures.&#x201d; This guidance requires more detailed disclosure about the types of expenses presented within the expense captions of the financial statements. Specifically, disclosure of purchases of inventory, employee compensation, depreciation, and intangible asset amortization are required on both an interim and annual basis. In addition, a qualitative description of remaining amounts in relevant expense captions which have not separately been disaggregated will be required on an interim and annual basis. On an annual basis, disclosure of an entity&#x2019;s definition of selling expenses and the amount of selling expenses is required. The amendments to this update are effective for annual reporting periods beginning after December 15, 2026, and interim periods&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;beginning after December 15, 2027. Early adoption of this update is permitted. The amendments to this update should be applied prospectively to financial statements issued for reporting periods after the effective date of the update or retrospectively to any or all prior periods presented in the financial statements. The Company believes adoption will result in expanded financial statement footnote disclosure but does not believe adoption of this update will have a material impact on its consolidated results of operations. The Company is continuing to evaluate the impacts of adoption.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:36pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;In December 2023, the FASB issued ASU No. 2023-09, &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;&#x201c;Income Taxes (Topic 740): Improvements to Income Tax Disclosures.&#x201d;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; The guidance requires public entities to disclose additional categories of information related to federal, state, and foreign income taxes and additional details related to reconciling items should they meet a quantitative threshold. The guidance requires disclosure of income taxes paid (net of refunds received) disaggregated by federal, state, and foreign taxes and to disaggregate the information by jurisdiction based on quantitative thresholds. The guidance is effective for fiscal year beginning after December 15, 2024. Early adoption was permitted. The guidance should be applied on a prospective basis, retrospective application is permitted. The Company does not expect adoption of the guidance to have a material effect on its consolidated results of operations and financial position.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</trex:DescriptionOfNewAccountingStandardsNotYetAdoptedTextBlock>
    <us-gaap:InventoryDisclosureTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_2bd15c3c-526e-4c86-b881-ed99b52f4fd7">&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;5.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;INVENTORIES &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Inventories valued at LIFO (last-in, first-out), consist of the following (in thousands):&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;  &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:66.993%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31,&lt;br/&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;December 31,&lt;br/&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Finished goods&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;151,077&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;183,670&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Raw materials&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;75,011&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;73,281&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total FIFO (first-in, first-out) inventories&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;226,088&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;256,951&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Reserve to adjust inventories to LIFO value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;49,669&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;49,669&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total LIFO inventories&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;176,419&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;207,282&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;&lt;/div&gt;&lt;p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company utilizes the LIFO method of accounting, which generally provides for the matching of current costs with current revenues. However, under the LIFO method, reductions in annual inventory balances may cause a portion of the Company&#x2019;s cost of sales to be based on historical costs rather than current year costs (LIFO liquidation). Reductions in interim inventory balances expected to be replenished by year-end do not result in a LIFO liquidation. Accordingly, interim LIFO calculations are based, in part, on management&#x2019;s estimates of expected year-end inventory levels and costs and may differ from actual results. Since inventory levels and costs are subject to factors beyond management&#x2019;s control, interim results are subject to the final year-end LIFO inventory valuation. There were no LIFO inventory liquidations or related impact on the cost of sales in the three months ended March 31, 2025.&lt;/span&gt;&lt;/p&gt;</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_898d0b00-f673-49e3-ba28-1c42645655e0">&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Inventories valued at LIFO (last-in, first-out), consist of the following (in thousands):&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;  &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:66.993%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31,&lt;br/&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;December 31,&lt;br/&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Finished goods&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;151,077&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;183,670&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Raw materials&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;75,011&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;73,281&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total FIFO (first-in, first-out) inventories&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;226,088&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;256,951&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Reserve to adjust inventories to LIFO value&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;49,669&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;49,669&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total LIFO inventories&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;176,419&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;207,282&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryFinishedGoods
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_10d5eb45-2a3d-4317-a273-cc5b3b20ba4f"
      unitRef="U_USD">151077000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryFinishedGoods
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_e0f0e0cf-434c-4d4f-896b-3a6bd7551c4f"
      unitRef="U_USD">183670000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryRawMaterials
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_276a5871-c7b4-4a14-89b7-b9a2ce1100bc"
      unitRef="U_USD">75011000</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryRawMaterials
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_4a92158a-78ab-4903-92df-48d7a0e523d9"
      unitRef="U_USD">73281000</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryGross
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_c8c1db55-1165-43ad-9328-e2cbb1e2e55f"
      unitRef="U_USD">226088000</us-gaap:InventoryGross>
    <us-gaap:InventoryGross
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_8672f276-bd09-4072-964b-b980a2f59ba2"
      unitRef="U_USD">256951000</us-gaap:InventoryGross>
    <us-gaap:InventoryLIFOReserve
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_2ac5d465-5cc6-450c-adea-d958ad747677"
      unitRef="U_USD">49669000</us-gaap:InventoryLIFOReserve>
    <us-gaap:InventoryLIFOReserve
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_c5360034-4cf3-4597-a8d9-a55e006fdc7f"
      unitRef="U_USD">49669000</us-gaap:InventoryLIFOReserve>
    <us-gaap:LIFOInventoryAmount
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_1286700c-0f7f-4227-8167-25c0c44cf257"
      unitRef="U_USD">176419000</us-gaap:LIFOInventoryAmount>
    <us-gaap:LIFOInventoryAmount
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_423d10b1-ea63-4e21-becf-e2af21a7195a"
      unitRef="U_USD">207282000</us-gaap:LIFOInventoryAmount>
    <trex:PrepaidAndOtherCurrentAssetsDisclosureTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_3d2df289-f471-4cd8-bef7-85f20224725a">&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;6.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;PREPAID EXPENSES AND OTHER ASSETS&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Prepaid expenses and other assets consist of the following (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:66.993%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31,&lt;br/&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;December 31,&lt;br/&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Prepaid expenses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;19,242&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;21,353&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;502&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;625&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total prepaid expenses and other assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;19,744&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;21,978&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;&lt;/div&gt;</trex:PrepaidAndOtherCurrentAssetsDisclosureTextBlock>
    <trex:PrepaidExpenseAndOtherAssetsCurrentTableTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_60e2c7b3-c020-4907-9242-cf87432a7ac1">&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Prepaid expenses and other assets consist of the following (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:66.993%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31,&lt;br/&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;December 31,&lt;br/&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Prepaid expenses&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;19,242&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;21,353&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;502&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;625&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total prepaid expenses and other assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;19,744&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;21,978&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;</trex:PrepaidExpenseAndOtherAssetsCurrentTableTextBlock>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_f67890bb-8c73-4609-b4f0-44db74bd6517"
      unitRef="U_USD">19242000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:PrepaidExpenseCurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_fd887154-aa47-42dc-a26f-8887d276b410"
      unitRef="U_USD">21353000</us-gaap:PrepaidExpenseCurrent>
    <us-gaap:OtherAssetsCurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_3304db21-c8c4-4bba-a35d-e10f7da04e8a"
      unitRef="U_USD">502000</us-gaap:OtherAssetsCurrent>
    <us-gaap:OtherAssetsCurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_ae86bef5-98ce-4d3e-b9e5-bfe34b394b65"
      unitRef="U_USD">625000</us-gaap:OtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_3367cb3b-5cae-4446-b1ad-1f801cb5fc8c"
      unitRef="U_USD">19744000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_afd1348d-73e5-4226-8935-bd4e141ee350"
      unitRef="U_USD">21978000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_8e26c1a1-b6a8-4f13-812e-4a1292662afb">&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;7.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;GOODWILL AND OTHER INTANGIBLE ASSETS, NET  &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:22.5pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The carrying amount of goodwill at March 31, 2025, and December 31, 2024, was $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;14.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million. The Company&#x2019;s intangible assets consist of domain names and internal use software. At March 31, 2025, and December 31, 2024, intangible assets were $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;12.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;10.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million and accumulated amortization was $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2.8&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million, respectively. Intangible asset amounts were determined based on the estimated economics of the asset and are amortized over the estimated useful lives on a straight-line basis over &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;15&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; years for domain names and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;10&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; years for internal use software, which approximates the pattern in which the economic benefits are expected to be received. The Company evaluates the recoverability of intangible assets periodically and considers events or circumstances that may warrant revised estimates of useful lives or that may indicate an impairment. Intangible asset amortization expense for the three months ended March 31, 2025, and March 31, 2024, was $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million, respectively.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock>
    <us-gaap:Goodwill
      contextRef="C_42ca4c73-90ef-4b90-b00d-126d90c60bd0"
      decimals="-5"
      id="F_6295b331-5b8f-49c6-a064-6c32a52cc5ed"
      unitRef="U_USD">14200000</us-gaap:Goodwill>
    <us-gaap:Goodwill
      contextRef="C_c72848d0-e167-49ed-aee9-d59f11c79b11"
      decimals="-5"
      id="F_be5407ba-a04e-4861-ba51-7f5f9a8a0e06"
      unitRef="U_USD">14200000</us-gaap:Goodwill>
    <us-gaap:IntangibleAssetsGrossExcludingGoodwill
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-5"
      id="F_c558e6a3-1f89-4c5e-b480-f313fd572db0"
      unitRef="U_USD">12200000</us-gaap:IntangibleAssetsGrossExcludingGoodwill>
    <us-gaap:IntangibleAssetsGrossExcludingGoodwill
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-5"
      id="F_3e25a845-2fb1-4855-9374-8baffe9718e8"
      unitRef="U_USD">10600000</us-gaap:IntangibleAssetsGrossExcludingGoodwill>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-5"
      id="F_93dcc8e4-39f2-48a1-a06a-ebdd416b183f"
      unitRef="U_USD">2900000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-5"
      id="F_772f876a-63c8-4782-90af-f4818d13bad6"
      unitRef="U_USD">2800000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="C_3beef847-3e50-4b98-bcde-845e6349e445"
      id="F_b2b4629f-78d8-422a-a54f-f181c37eab45">P15Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife
      contextRef="C_0e4bce22-8cda-4cb9-bf6d-062535f9444e"
      id="F_f902a9d8-bb59-4e09-8b2a-d7d300829297">P10Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-5"
      id="F_90965f46-6d1a-4420-80f2-d2d233591e72"
      unitRef="U_USD">100000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-5"
      id="F_1ba7b7b4-580a-4d85-8345-add8fa78be40"
      unitRef="U_USD">100000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_bcd17f52-827e-425b-8289-4cb5808912ff">&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;8.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;ACCRUED EXPENSES AND OTHER LIABILITIES&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Accrued expenses and other liabilities consist of the following (in thousands):&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:66.993%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31,&lt;br/&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;December 31,&lt;br/&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Sales and marketing&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;39,522&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;22,874&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Income taxes&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;20,067&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;917&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Compensation and benefits&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;14,600&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;16,132&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span&gt;&lt;span style="-sec-ix-hidden:F_e2aa5d31-7ed7-42b1-955d-2a49e48c0b78;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Operating&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span&gt;&lt;span style="-sec-ix-hidden:F_ec91e9ce-d153-4e5e-aa4a-835f2d40fa80;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;lease liabilities&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;11,093&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;10,800&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Capital projects&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;8,216&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;13,274&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Manufacturing costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,904&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;7,929&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5,978&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total accrued expenses and other liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;105,427&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;72,879&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;&lt;/div&gt;</us-gaap:AccountsPayableAccruedLiabilitiesAndOtherLiabilitiesDisclosureCurrentTextBlock>
    <trex:ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_03d80905-8d3d-4093-ae5a-21d8b7c88f64">&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Accrued expenses and other liabilities consist of the following (in thousands):&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:66.993%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31,&lt;br/&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;December 31,&lt;br/&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Sales and marketing&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;39,522&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;22,874&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Income taxes&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;20,067&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;917&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Compensation and benefits&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;14,600&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;16,132&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span&gt;&lt;span style="-sec-ix-hidden:F_e2aa5d31-7ed7-42b1-955d-2a49e48c0b78;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Operating&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span&gt;&lt;span style="-sec-ix-hidden:F_ec91e9ce-d153-4e5e-aa4a-835f2d40fa80;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;lease liabilities&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;11,093&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;10,800&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Capital projects&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;8,216&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;13,274&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Manufacturing costs&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4,000&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,904&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Other&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;7,929&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5,978&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total accrued expenses and other liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;105,427&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;72,879&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;</trex:ScheduleOfAccruedLiabilitiesAndOtherCurrentLiabilitiesTableTextBlock>
    <us-gaap:AccruedMarketingCostsCurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_707faa5c-7f2d-4584-8f3f-1e618f7bf942"
      unitRef="U_USD">39522000</us-gaap:AccruedMarketingCostsCurrent>
    <us-gaap:AccruedMarketingCostsCurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_25ea19b2-3312-4b9e-85dd-880d7dc94b56"
      unitRef="U_USD">22874000</us-gaap:AccruedMarketingCostsCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_e582986f-904e-4f48-8d1a-146e38fc0381"
      unitRef="U_USD">20067000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_cd5430ae-46a0-4a29-bf87-bdfc8b2e33c8"
      unitRef="U_USD">917000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_b36a3b85-a2dd-46fd-92b2-ddc988de42e0"
      unitRef="U_USD">14600000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_c50f8f75-a583-4329-9a6d-4f117f1326f3"
      unitRef="U_USD">16132000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_e7c90d13-f11c-4be4-a57d-c8afb2881bf2"
      unitRef="U_USD">11093000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_8bac3c3d-ded4-470d-9332-459a472bc2f8"
      unitRef="U_USD">10800000</us-gaap:OperatingLeaseLiabilityCurrent>
    <trex:AccruedCapitalProjectsCurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_37ce3309-95ca-4a65-8682-6a8a8704df3e"
      unitRef="U_USD">8216000</trex:AccruedCapitalProjectsCurrent>
    <trex:AccruedCapitalProjectsCurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_a2c413a7-7e48-4fe4-8f49-1fb8da3fe29e"
      unitRef="U_USD">13274000</trex:AccruedCapitalProjectsCurrent>
    <trex:AccruedManufacturingExpensesCurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_93f2f641-aa86-4b8a-ac67-41208ab72ab5"
      unitRef="U_USD">4000000</trex:AccruedManufacturingExpensesCurrent>
    <trex:AccruedManufacturingExpensesCurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_99cf0e0f-8b89-40e5-b6cd-66fe6e6d7306"
      unitRef="U_USD">2904000</trex:AccruedManufacturingExpensesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_9e9858c3-77c6-4e1d-84e2-14aebe5b9aab"
      unitRef="U_USD">7929000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_76805ce9-40e2-4aa1-90c5-5e5f5a36bb99"
      unitRef="U_USD">5978000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <trex:AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_512332a1-0411-4445-bd99-09910b02d3a3"
      unitRef="U_USD">105427000</trex:AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty>
    <trex:AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_20a6d9be-81ea-430d-88b7-4b5e22b95491"
      unitRef="U_USD">72879000</trex:AccruedLiabilitiesAndOtherLiabilitiesCurrentExcludingWarranty>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_55614800-4fa6-4262-9c5f-6133c2c66b93">&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;9.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;DEBT &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;Revolving Credit Facility&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;text-decoration:underline solid;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Indebtedness prior to October 10, 2024.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; On May 18, 2022, the Company entered into a Credit Agreement (Credit Agreement) with certain lending parties thereto (Lenders) to amend and restate the Fourth Amended and Restated Credit Agreement dated as of November 5, 2019. Under the Credit Agreement, the Lenders agreed to provide the Company with one or more Revolving Loans in a collective maximum principal amount of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;400,000,000&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; (Loan Limit) throughout the term, which ends &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;May 18, 2027&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; (Term). Included within the Loan Limit are sublimits for a Letter of Credit facility in an amount not to exceed $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;60,000,000&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;; and Swing Line Loans in an aggregate principal amount at any time outstanding not to exceed $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;20,000,000&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;. The Revolving Loans, the Letter of Credit facility and the Swing Line Loans are for the purpose of raising working capital and supporting general business operations.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;  &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;On December 22, 2022, the Company entered into a First Amendment to the Credit Agreement (First Amendment). As a part of the First Amendment, the Credit Agreement was amended and restated to provide for an additional Revolving B Loan (as hereinafter defined). Under the First Amendment, the Lenders agreed to provide the Company with a Revolving B Loan consisting of one or more revolving loans in a collective maximum principal amount of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;150,000,000&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; (Revolving B Loan Limit) throughout the term, which ended December 22, 2024 (Revolving B Loan Term). Previously, under the Credit Agreement, there was no Revolving B Loan. The First Amendment also provided that TD Bank, N.A. would serve as Syndication Agent.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;In conjunction with the First Amendment, on December 22, 2022, the Credit Agreement was amended and restated to refer to the original loan as the Revolving A Loan. The amended and restated Credit Agreement was made an Exhibit A to the First Amendment. All of the terms of the Credit Agreement apply to the Revolving B Loan.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The amended Credit Agreement provides the Company, in the aggregate, the ability to borrow an amount up to the Revolving A Loan Limit during the Revolving A Loan Term (which ends May 18, 2027) and Revolving B Loan Limit during the Revolving B Loan Term. The Company is not obligated to borrow any amount under the revolving loans. Within the respective loan limit, the Company may borrow, repay and reborrow at any time or from time to time while the notes issued pursuant to the Credit Agreement are in effect.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Base Rate Loans (as defined in the Credit Agreement) under the Revolving A Loan and the Swing Line Loans accrue interest at the Base Rate plus the Applicable Rate (as defined in the Credit Agreement) and Term SOFR Loans for the Revolving Loans accrue interest at the rate per annum equal to the sum of Term SOFR for such interest period plus the Applicable Rate (as defined in the Credit Agreement). The Base Rate for any day is a fluctuating rate per annum equal to the highest of (a) &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;the Federal Funds Rate plus &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.50&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, (b) the rate of interest in effect for such day as publicly announced from time to time by BOA as its prime rate, and (c) &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;the Term SOFR plus &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;% &lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;subject to certain interest rate floors. Repayment of all then outstanding principal, interest, fees and costs is due at the end of the Term.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;With respect to Revolving B Loans (as defined in the First Amendment), for any day, the rate per annum is a tiered pricing based upon the Consolidated Debt to Consolidated EBITDA Ratio. The applicable rate for Revolving B Loans that are Base Rate Loans range between &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.20&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;% and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2.15&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;% and the applicable rate for Revolving B Loans that are Term SOFR/Term SOFR Daily Floating Rate range between &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.20&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;% and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.15&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;%.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Under the terms of the Security and Pledge Agreement, the Company, subject to certain permitted encumbrances, as collateral security for the above-stated loans and all other present and future indebtedness of the Company owing to the Lenders grants a continuing security interest in certain collateral described and defined in the Security and Pledge Agreement but excluding the Excluded Property (as defined in the Security and Pledge Agreement).&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;text-decoration:underline solid;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Indebtedness on and after October 10, 2024.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; On October 10, 2024, the Company, entered into a Second Amendment to the Credit Agreement (Second Amendment) with certain lending parties thereto (Lenders) to amend that Credit Agreement dated as of May 18, 2022, as amended by that certain First Amendment dated as of December 22, 2022.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Second Amendment provides the Company with Revolving A Loans in the maximum principal amount of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;400,000,000&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; (Revolving A Loans), Revolving B Loans in the maximum principal amount of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;150,000,000&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; (Revolving B Loans), and Letters of Credit and Swing Line Loans (as defined in the Credit Agreement). The Second Amendment extends the maturity date of the Revolving B Loans from December 22, 2024 to &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;December 22, 2026&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Base Rate Loans (as defined in the Credit Agreement) under the Revolving A Loan and the Swing Line Loans accrue interest at the Base Rate plus the Applicable Rate (as defined in the Credit Agreement) and Term SOFR Loans for the Revolving Loans accrue interest at the rate per annum equal to the sum of Term SOFR for such interest period plus the Applicable Rate (as defined in the Credit Agreement). The Base Rate for any day is a fluctuating rate per annum equal to the highest of (a) &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;the Federal Funds Rate plus &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.50&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, (b) the rate of interest in effect for such day as publicly announced from time to time by BOA as its prime rate, and (c) &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;the Term SOFR plus &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; subject to certain interest rate floors. Repayment of all then outstanding principal, interest, fees and costs is due at the end of the Term (as defined in the Credit Agreement).&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;With respect to Revolving B Loans (as defined in the Credit Agreement), for any day, the rate per annum is a tiered pricing based upon the Consolidated Debt to Consolidated EBITDA Ratio. The applicable rate for Revolving B Loans that are Base Rate Loans range between &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.20&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;% and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.15&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;%. and the applicable rate for Revolving B Loans that are Term SOFR/Term SOFR Daily Floating Rate range between &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1.20&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;% and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2.15&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;%.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:24.5pt;font-size:10pt;margin-top:12pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company had $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;443.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million in borrowings outstanding under its revolving credit facility and available borrowing capacity of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;106.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million at March 31, 2025. The weighted average interest rate on the revolving credit facility was &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5.27&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;% as of March 31, 2025.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:18pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;Compliance with Debt Covenants and Restrictions&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Pursuant to the terms of the Credit Agreement, the Company is subject to certain loan compliance covenants. The Company was in compliance with all covenants as of March 31, 2025. Failure to comply with the financial covenants could be considered a default of repayment obligations and, among other remedies, could accelerate payment of any amounts outstanding.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="C_224201fd-0c13-4d14-8ad7-8a27c05aadb9"
      decimals="0"
      id="F_089366be-8582-41ab-961c-76704296e340"
      unitRef="U_USD">400000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityExpirationDate1
      contextRef="C_510b2854-e839-4877-a3fd-5bac350b0b37"
      id="F_1e0bf918-15bc-4579-9ed2-68e8bd372ae8">2027-05-18</us-gaap:LineOfCreditFacilityExpirationDate1>
    <trex:LineOfCreditFacilityAdditionalBorrowingCapacity
      contextRef="C_1189355a-db46-40c0-bc46-fe832af80406"
      decimals="0"
      id="F_0912dc8e-3838-4a7f-aa73-e061e4aa3efb"
      unitRef="U_USD">60000000</trex:LineOfCreditFacilityAdditionalBorrowingCapacity>
    <trex:LineOfCreditFacilityAdditionalBorrowingCapacity
      contextRef="C_07abb3c3-6df5-4ba7-b094-f458952596a1"
      decimals="0"
      id="F_aa39c47a-9861-4608-9b02-a8a88bc09512"
      unitRef="U_USD">20000000</trex:LineOfCreditFacilityAdditionalBorrowingCapacity>
    <us-gaap:LineOfCredit
      contextRef="C_de09c54a-bfa7-4fd5-9769-18acb4be47cb"
      decimals="0"
      id="F_fad49a7b-bc98-4b51-a3da-f67e08636128"
      unitRef="U_USD">150000000</us-gaap:LineOfCredit>
    <us-gaap:DebtInstrumentDescriptionOfVariableRateBasis
      contextRef="C_8d7f1229-5195-47d8-8fa9-df23f0a0b68c"
      id="F_34d5f957-06b6-4780-816a-37495fb29e55">the Federal Funds Rate plus 0.50%</us-gaap:DebtInstrumentDescriptionOfVariableRateBasis>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="C_8d7f1229-5195-47d8-8fa9-df23f0a0b68c"
      decimals="4"
      id="F_ed2828e5-3eba-4ad6-8739-eb2cb26cecbf"
      unitRef="U_pure">0.005</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentDescriptionOfVariableRateBasis
      contextRef="C_3d06506b-c99b-4e55-88e5-e7f9d2fa2640"
      id="F_b66741c4-a9bf-4105-ad09-44b24b917965">the Term SOFR plus 1.0% </us-gaap:DebtInstrumentDescriptionOfVariableRateBasis>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="C_3d06506b-c99b-4e55-88e5-e7f9d2fa2640"
      decimals="3"
      id="F_9474a9aa-573e-43ba-97e9-aa7baa2812f6"
      unitRef="U_pure">0.01</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="C_93a5cdf3-f382-4f23-928e-36fc0fb1d4a8"
      decimals="4"
      id="F_f81c0f2a-7bca-455a-948d-4ee7b178c52d"
      unitRef="U_pure">0.012</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="C_a4862091-976f-417e-bd09-7de4d4cf93c2"
      decimals="4"
      id="F_219e552d-4cc5-4785-becc-6754c5b9e20b"
      unitRef="U_pure">0.0215</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="C_971d16a1-e6c4-4c7e-adf7-a972fcbb0bbf"
      decimals="4"
      id="F_0ea10ef1-039b-4b58-bda9-9bd393c1a83b"
      unitRef="U_pure">0.002</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="C_00a7e601-2c4d-4de3-9982-eb44ea16f244"
      decimals="4"
      id="F_a8c6286c-153d-4038-8e61-3203f2d7b5d5"
      unitRef="U_pure">0.0115</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:LineOfCredit
      contextRef="C_4e657225-72cb-4527-a959-aed35dbd0e57"
      decimals="0"
      id="F_980d2fd3-7bee-4bb6-b7f3-9fded0a47e71"
      unitRef="U_USD">400000000</us-gaap:LineOfCredit>
    <us-gaap:LineOfCredit
      contextRef="C_086b6cb3-f29b-4298-9cfe-b908216088ce"
      decimals="0"
      id="F_8d60985e-7c96-45e5-815f-d3ce59cef251"
      unitRef="U_USD">150000000</us-gaap:LineOfCredit>
    <us-gaap:DebtInstrumentMaturityDate
      contextRef="C_0a38ddf9-9952-4759-be86-f0e644141009"
      id="F_558ce618-bf8c-4ad7-acbe-f5ccc0a66a1c">2026-12-22</us-gaap:DebtInstrumentMaturityDate>
    <us-gaap:DebtInstrumentDescriptionOfVariableRateBasis
      contextRef="C_ee91a715-ec00-4f31-8cae-c2482ddce973"
      id="F_80c266f4-ec52-4e45-907b-26e77a7e154d">the Federal Funds Rate plus 0.50%</us-gaap:DebtInstrumentDescriptionOfVariableRateBasis>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="C_ee91a715-ec00-4f31-8cae-c2482ddce973"
      decimals="4"
      id="F_dc730068-2270-4351-ace1-701c818e7f71"
      unitRef="U_pure">0.005</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentDescriptionOfVariableRateBasis
      contextRef="C_93c9cbbc-a9c1-4b81-a782-12dd2e6a7acf"
      id="F_1bb924f0-9fd4-4a98-8479-d61e45a87930">the Term SOFR plus 1.0%</us-gaap:DebtInstrumentDescriptionOfVariableRateBasis>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="C_93c9cbbc-a9c1-4b81-a782-12dd2e6a7acf"
      decimals="3"
      id="F_fe67d804-f166-41e2-b793-6c62a95cea30"
      unitRef="U_pure">0.01</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="C_adbf5788-67b1-46fa-b100-cc206bffbf94"
      decimals="4"
      id="F_1e33e901-4e7a-46fa-bd29-72effe6c0502"
      unitRef="U_pure">0.002</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="C_1444d23f-0baa-49e9-a9d3-8087a8ff104a"
      decimals="4"
      id="F_efff235f-e054-43b8-b470-ce071fbd547f"
      unitRef="U_pure">0.0115</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="C_952dd5fd-f70a-4adf-8a70-3e58962bf2a6"
      decimals="4"
      id="F_62543f6b-9f8c-4b8e-b641-4d928acd1852"
      unitRef="U_pure">0.012</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="C_70f3b8e4-e6a4-4b5a-ac4f-c9f4a44c8cbe"
      decimals="4"
      id="F_82dec59c-a06b-4a66-a5ee-a6fb9f42ce15"
      unitRef="U_pure">0.0215</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:LinesOfCreditCurrent
      contextRef="C_ea205a13-9bb6-4a00-b70a-a25ec263eb02"
      decimals="-5"
      id="F_f359b44c-c7ba-4eec-acc1-684e9f31cbf5"
      unitRef="U_USD">443900000</us-gaap:LinesOfCreditCurrent>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="C_ea205a13-9bb6-4a00-b70a-a25ec263eb02"
      decimals="-5"
      id="F_5aacf244-0273-48b0-a2a0-1a50270e67f1"
      unitRef="U_USD">106100000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <us-gaap:DebtWeightedAverageInterestRate
      contextRef="C_ea205a13-9bb6-4a00-b70a-a25ec263eb02"
      decimals="4"
      id="F_cc7a4ef8-bdbd-4db6-9076-a9e2d8bcf5a8"
      unitRef="U_pure">0.0527</us-gaap:DebtWeightedAverageInterestRate>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_013c0196-f04c-4ed7-8817-3636579b6276">&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;10.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;LEASES &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company leases manufacturing and training facilities, storage warehouses, office space, and certain office and plant equipment under various operating leases. The Company&#x2019;s operating leases have remaining lease terms of up to &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;10&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; years. Lease terms may include options to extend or terminate the lease when it is reasonably certain that the Company will exercise that option.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;For the three months ended March 31, 2025 and March 31, 2024, total operating lease expense was $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2.0&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million, respectively. The weighted average remaining lease term at March 31, 2025 and December 31, 2024 was &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;6.1&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; years and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;6.3&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; years, respectively. The weighted average discount rate at March 31, 2025 and December 31, 2024 was &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4.60&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;% and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4.57&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;%, respectively.&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following table includes supplemental cash flow information for the three months ended March 31, 2025 and March 31, 2024, and supplemental balance sheet information at March 31, 2025 and December 31, 2024 related to operating leases (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:66.993%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Supplemental cash flow information&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Cash paid for amounts included in the measurement of&lt;br/&gt;&#160;&#160;&#160;operating lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,661&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,007&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Operating ROU assets obtained in exchange for lease&lt;br/&gt;&#160;&#160;&#160;liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;692&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;578&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:66.993%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Supplemental balance sheet information&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31,&lt;br/&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;December 31,&lt;br/&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Operating lease ROU assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;49,976&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;52,195&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Operating lease liabilities:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Accrued expenses and other current liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;11,093&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;10,800&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Operating lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;39,788&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;41,979&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total operating lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;50,881&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;52,779&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following table summarizes maturities of operating lease liabilities at March 31, 2025 (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:60.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:80.236%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.94%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:15.823%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Maturities of operating lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;8,518&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;11,237&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2027&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;10,641&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2028&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;9,650&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2029&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4,385&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Thereafter&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;15,555&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total lease payments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;59,986&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Less imputed interest&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;9,105&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total operating lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;50,881&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;&lt;/div&gt;</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:LessorOperatingLeaseTermOfContract
      contextRef="C_4e36190e-5f50-4a3a-b077-02efb7ecc131"
      id="F_ffc69ec1-e763-44d3-8434-5db1febadd21">P10Y</us-gaap:LessorOperatingLeaseTermOfContract>
    <us-gaap:OperatingLeaseCost
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-5"
      id="F_db4ee929-aaa8-4bfc-b638-0751074f9022"
      unitRef="U_USD">3000000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-5"
      id="F_332c3a3a-a3f7-4d14-98fa-474b3b407251"
      unitRef="U_USD">2000000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      id="F_f9d237c8-b081-4ed1-9713-1d34147bb78f">P6Y1M6D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      id="F_9c05b254-eaaf-4e17-830b-6ead0fa82d4e">P6Y3M18D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="INF"
      id="F_cddf7c9e-867c-492d-9e89-3ffbf1182556"
      unitRef="U_pure">0.046</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="INF"
      id="F_093132a7-bc98-4a5e-b601-caeacef9bb69"
      unitRef="U_pure">0.0457</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <trex:SupplementalFinancialInformationOfOperatingLeasesTableTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_f5c70427-ef11-4ca7-ae8b-5d98de6b0f5b">&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following table includes supplemental cash flow information for the three months ended March 31, 2025 and March 31, 2024, and supplemental balance sheet information at March 31, 2025 and December 31, 2024 related to operating leases (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:66.993%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="6" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Supplemental cash flow information&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Cash paid for amounts included in the measurement of&lt;br/&gt;&#160;&#160;&#160;operating lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,661&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,007&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Operating ROU assets obtained in exchange for lease&lt;br/&gt;&#160;&#160;&#160;liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;692&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;578&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:66.993%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Supplemental balance sheet information&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;March 31,&lt;br/&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;December 31,&lt;br/&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:left;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Operating lease ROU assets&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;49,976&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;52,195&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Operating lease liabilities:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Accrued expenses and other current liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;11,093&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;10,800&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Operating lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;39,788&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;41,979&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total operating lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;50,881&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;52,779&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;</trex:SupplementalFinancialInformationOfOperatingLeasesTableTextBlock>
    <us-gaap:OperatingLeasePayments
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_aaa2c860-0eb3-4ca3-a38d-98a2265a7d23"
      unitRef="U_USD">2661000</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_d0116d0f-cf94-4960-b667-bd1909878748"
      unitRef="U_USD">2007000</us-gaap:OperatingLeasePayments>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_b609a4af-501e-4df6-8eb4-1728961c55e1"
      unitRef="U_USD">692000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_737ce8b9-858f-498e-a15f-4bbb5f5e9660"
      unitRef="U_USD">578000</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_8d056ad4-b4e9-47ed-ac01-080d35c1d195"
      unitRef="U_USD">49976000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_87683f2b-908b-49ad-b94b-6d4ec0b472f0"
      unitRef="U_USD">52195000</us-gaap:OperatingLeaseRightOfUseAsset>
    <trex:LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_dc43d8e0-7bec-4c4c-8074-3e9d138f3ab2"
      unitRef="U_USD">11093000</trex:LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities>
    <trex:LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_ed62a4f7-a42c-44e4-987c-93a421187ab1"
      unitRef="U_USD">10800000</trex:LesseeOperatingLeasesAccruedExpensesAndOtherCurrentLiabilities>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_65ff06c0-fd80-434b-94ef-ae06ffdaca1e"
      unitRef="U_USD">39788000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_4df4c5dc-41a7-46f8-812e-89de021d8050"
      unitRef="U_USD">41979000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiability
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_558178cb-6cbc-467a-b5ab-6731c3b52f18"
      unitRef="U_USD">50881000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseLiability
      contextRef="C_ee3fbd05-f521-4f2a-9d9d-4841c7986a0d"
      decimals="-3"
      id="F_ae3be13d-84c3-4795-8ac4-37c1e50b16c8"
      unitRef="U_USD">52779000</us-gaap:OperatingLeaseLiability>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_11649b53-d99a-45f9-a0d3-2b4a9bd5c243">&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following table summarizes maturities of operating lease liabilities at March 31, 2025 (in thousands):&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:60.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:80.236%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.94%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:15.823%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Maturities of operating lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;8,518&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2026&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;11,237&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2027&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;10,641&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2028&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;9,650&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2029&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4,385&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Thereafter&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;15,555&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total lease payments&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;59,986&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Less imputed interest&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;9,105&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total operating lease liabilities&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;50,881&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_60aac613-dcb2-4a65-bda4-bf1c84370c3a"
      unitRef="U_USD">8518000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_7e35ba00-32c8-4f88-a29d-7b141e87336a"
      unitRef="U_USD">11237000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_6ba2da73-76cb-4251-ac9d-39c655f15445"
      unitRef="U_USD">10641000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_0c5f3256-9c52-471f-9524-541c7ba540f9"
      unitRef="U_USD">9650000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_af39b271-dd6f-409b-bcac-fa232359fb41"
      unitRef="U_USD">4385000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_cd5c2b7b-f777-465e-bb95-b162312c74d5"
      unitRef="U_USD">15555000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_d2d114a9-87d4-4552-a2ab-667f1a83de2e"
      unitRef="U_USD">59986000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_c3c8bca6-3900-469a-93ae-911084d413c6"
      unitRef="U_USD">9105000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-3"
      id="F_247f1191-d1c2-443a-8461-441e42550068"
      unitRef="U_USD">50881000</us-gaap:OperatingLeaseLiability>
    <us-gaap:FinancialInstrumentsDisclosureTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_896697bb-8be8-4339-9fe8-c431dae29faf">&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;11.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;FINANCIAL INSTRUMENTS&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company considers the recorded value of its financial assets and liabilities, consisting primarily of cash and cash equivalents, accounts receivable, accounts payable, accrued expenses, other current liabilities, and debt to approximate the fair value of the respective assets and liabilities on the Condensed Consolidated Balance Sheets at March 31, 2025 and December 31, 2024.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</us-gaap:FinancialInstrumentsDisclosureTextBlock>
    <us-gaap:StockholdersEquityNoteDisclosureTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_ae1e4a98-7c7a-48c9-87b3-9d3d362f66a1">&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;12.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;STOCKHOLDERS&#x2019; EQUITY &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;Earnings Per Share&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following table sets forth the computation of basic and diluted earnings per share (in thousands, except share and per share data):&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:75.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:49.92%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:2.1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:20.939999999999998%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:2.1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:20.939999999999998%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;"&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Numerator:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Net income available to common shareholders&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;60,434&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;89,070&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;"&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Denominator:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Basic weighted average shares outstanding&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;107,180,665&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;108,640,168&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;"&gt;
          &lt;td style="padding-top:0.01in;text-indent:10pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Effect of dilutive securities:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Stock appreciation rights and options&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;34,543&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;71,202&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Restricted stock&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;68,876&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;79,255&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Diluted weighted average shares outstanding&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;107,284,084&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;108,790,625&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Basic earnings per share&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.56&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.82&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Diluted earnings per share&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.56&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.82&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;&lt;/div&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Diluted earnings per share is computed using the weighted average number of shares determined for the basic earnings per share computation plus the dilutive effect of common stock equivalents using the treasury stock method. &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The computation of diluted earnings per share excludes the following potentially dilutive securities because the effect would be anti-dilutive:  &lt;/span&gt;&lt;/span&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:59.768%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.22%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:16.897%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.22%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:16.897%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Stock appreciation rights&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;129,069&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;55,132&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Restricted stock&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;92,795&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;48,597&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;&lt;/div&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;Stock Repurchase Program&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:24.5pt;font-size:10pt;margin-top:6pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;On May 4, 2023, the Trex Board of Directors adopted a new stock repurchase program (2023 Stock Repurchase Program) of up to &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;10.8&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million shares of its outstanding common stock. The 2023 Stock Repurchase Program has no set expiration date. During the three months ended March 31, 2025, the Company did &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;no&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;t repurchase any shares of its outstanding common stock under the 2023 Stock Repurchase Program.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</us-gaap:StockholdersEquityNoteDisclosureTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_0b09dfae-339a-4408-b5dd-25f39a5f019c">&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following table sets forth the computation of basic and diluted earnings per share (in thousands, except share and per share data):&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:75.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:49.92%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:2.1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:20.939999999999998%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:2.1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:20.939999999999998%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;"&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Numerator:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Net income available to common shareholders&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;60,434&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;89,070&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;"&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Denominator:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Basic weighted average shares outstanding&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;107,180,665&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;108,640,168&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;white-space:pre-wrap;"&gt;
          &lt;td style="padding-top:0.01in;text-indent:10pt;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Effect of dilutive securities:&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Stock appreciation rights and options&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;34,543&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;71,202&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;text-indent:20pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:20pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Restricted stock&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;68,876&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;79,255&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Diluted weighted average shares outstanding&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;107,284,084&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;108,790,625&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Basic earnings per share&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.56&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.82&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Diluted earnings per share&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.56&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.82&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_dbc60e4f-f1d9-470e-a89c-a3898ab622da"
      unitRef="U_USD">60434000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_a2a8ee4b-28b6-477a-82cc-3db58a0f7dd3"
      unitRef="U_USD">89070000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="0"
      id="F_4b868db0-05f3-4932-b4ad-7f1abf11fa54"
      unitRef="U_shares">107180665</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="0"
      id="F_ae5876a6-4d12-4bac-ac4c-0feeda18085a"
      unitRef="U_shares">108640168</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="C_d01351bb-f834-4793-bab7-1481202ca75e"
      decimals="0"
      id="F_7871272e-0066-4469-9b9a-e0ecf57dde0d"
      unitRef="U_shares">34543</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="C_4b712b3f-0832-41c7-b1a1-4b22f5f05319"
      decimals="0"
      id="F_f9d62eb3-30d7-470f-a97d-2aebc282ce6b"
      unitRef="U_shares">71202</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="C_fc885d73-bdbe-4b1c-a129-ec6764fcad9d"
      decimals="0"
      id="F_4a80084c-d523-4c50-9359-9d8d72fbaf36"
      unitRef="U_shares">68876</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
      contextRef="C_a59a28f8-7444-4c8e-b5b3-6ec3f5aa21fa"
      decimals="0"
      id="F_f2e9293a-03cf-4848-b255-c14ee72c1ffa"
      unitRef="U_shares">79255</us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="0"
      id="F_62fb4bde-d0d5-42f8-a380-5d5b2ad64b6d"
      unitRef="U_shares">107284084</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="0"
      id="F_68ff8378-cb09-4285-8838-c60f26779952"
      unitRef="U_shares">108790625</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="2"
      id="F_955d7504-65d9-4eb4-8330-24ba7bf644f5"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.56</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="2"
      id="F_7187d1f6-87c0-450a-b1d1-b6c84c498470"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.82</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="2"
      id="F_25e3d193-104a-405e-aa16-5ce04f22199a"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.56</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="2"
      id="F_6a9091e5-2c1b-4307-8fee-76d20770f0db"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">0.82</us-gaap:EarningsPerShareDiluted>
    <us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_0199622a-1cd7-46c9-9743-166b23f6d944">&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The computation of diluted earnings per share excludes the following potentially dilutive securities because the effect would be anti-dilutive:  &lt;/span&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:59.768%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.22%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:16.897%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.22%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:16.897%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Stock appreciation rights&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;129,069&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;55,132&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Restricted stock&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;92,795&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;48,597&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;</us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="C_9915ab83-de30-458e-824c-8c26ea72826b"
      decimals="0"
      id="F_c63fff87-b71d-41d7-bba6-e8cf9ff562cf"
      unitRef="U_shares">129069</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="C_aecbc23d-299b-47de-8108-584ea6fc66e4"
      decimals="0"
      id="F_13692d06-02c4-44d0-bc9f-6662acf8f2f9"
      unitRef="U_shares">55132</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="C_b2989125-46c1-4c05-bbdd-d8bd2b6c3c1e"
      decimals="0"
      id="F_364cad0c-f741-4151-b8a0-dc4998131706"
      unitRef="U_shares">92795</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="C_1ed0bdaf-302b-412b-9fde-6c43971a996a"
      decimals="0"
      id="F_4b3276ea-656f-4275-9d6d-a9b27c9933e5"
      unitRef="U_shares">48597</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:TreasuryStockSharesAcquired
      contextRef="C_fdba3cdf-18f8-4b3e-a8cc-7b89cf63fec1"
      decimals="-5"
      id="F_ada93810-e0b4-4923-a623-79a3db2e2cc2"
      unitRef="U_shares">10800000</us-gaap:TreasuryStockSharesAcquired>
    <us-gaap:StockRepurchasedDuringPeriodShares
      contextRef="C_7c978468-c4fe-4b54-8c63-01aa42b959c2"
      decimals="INF"
      id="F_a3f9f6a1-7090-4c17-b6ab-d7b02a4d1851"
      unitRef="U_shares">0</us-gaap:StockRepurchasedDuringPeriodShares>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_f1c742a7-42b5-4db2-b5fb-16a552a616af">&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;13.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;REVENUE FROM CONTRACTS WITH CUSTOMERS&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company principally generates revenue from the manufacture and sale of its high-performance, low-maintenance, eco-friendly wood-alternative composite decking and railing products and accessories. Substantially all of its revenues are from contracts with customers, which are purchase orders of short-term duration of less than one year. Its customers, in turn, sell primarily to the residential market, which includes replacement, remodeling and new construction related to outdoor living products. The Company satisfies its performance obligations at a point in time. The shipment of each product is a separate performance obligation as the customer is able to derive benefit from each product shipped and no performance obligation remains after shipment. Upon shipment of the product, the customer obtains control over the distinct product and Trex satisfies its performance obligation. Any performance obligation that remains unsatisfied at the end of a reporting period is part of a contract that has an original expected duration of one year or less. Any variable consideration related to the unsatisfied performance obligation is allocated wholly to the unsatisfied performance obligation, is recognized when the product ships and the performance obligation is satisfied and is included in &#x201c;Accrued expenses and other liabilities, Sales and marketing&#x201d; in Note 8 to the Condensed Consolidated Financial Statements. For the three months ended March 31, 2025 and March 31, 2024, the Company&#x2019;s net sales were $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;339,993&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;373,635&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;, respectively. During these periods, revenues were recognized at a point in time upon transfer of its outdoor living products under variable consideration contracts into the building products market.&lt;/span&gt;&lt;/p&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_a080e3ee-64ab-4427-9916-68fa542355c8"
      unitRef="U_USD">339993000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_de9dae63-8fd5-451e-88e0-547601442ab8"
      unitRef="U_USD">373635000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_9119e619-88ce-43b6-b04a-bf84105bd5b4">&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;14.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;STOCK-BASED COMPENSATION &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:22.5pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;At the annual meeting of stockholders of the Company held on May 4, 2023, the Company&#x2019;s stockholders approved the Trex Company, Inc. 2023 Stock Incentive Plan (Plan). The Company&#x2019;s board of directors unanimously approved the Plan on April 10, 2023, subject to stockholder approval. The Plan amends and restates in its entirety the Trex Company, Inc. 2014 Stock Incentive Plan (2014 Plan), which was last approved by the Company&#x2019;s stockholders at the annual meeting held on April 30, 2014. The Plan, which will be administered by the compensation committee of the board of directors, provides for the grant of stock options, restricted stock, restricted stock units, stock appreciation rights and unrestricted stock, which are referred to collectively as &#x201c;awards.&#x201d; Awards may be granted under the Plan to officers, directors (including non-employee directors) and other employees of the Company or any subsidiary thereof, to any adviser, consultant, or other provider of services to the Company (and any employee thereof), and to any other individuals who are approved by the board of directors as eligible to participate in the Plan. Only employees of the Company or any subsidiary thereof are eligible to receive incentive stock options. Subject to certain adjustments as provided in the Plan, the total number of shares of common stock available for future grants under the Plan is &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3,669,418&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; shares.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:22.5pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following table summarizes the Company&#x2019;s stock-based compensation grants for the three months ended March 31, 2025:&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:66.98%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.16%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:13.36%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.88%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Stock Awards&lt;br/&gt;Granted&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Grant Price&lt;br/&gt;Per Share&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Time-based restricted stock units&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;65,750&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;67.29&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Performance-based restricted stock units (a)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;97,063&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;65.34&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Stock appreciation rights&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;43,597&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;67.33&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;&lt;p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div class="item-list-element-wrapper" style="margin-left:0.25in;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.25in;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:3.447919145106397%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;(a)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Includes &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;75,210&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; of target performance-based restricted stock unit awards granted during the three months ended March 31, 2025, and adjustments of &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,093&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; and &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;20,760&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; to grants due to the actual performance level achieved for restricted stock and restricted stock units award&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;ed in 2024 and 2023, r&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;espectively.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The fair value of each SAR is estimated on the date of grant using a &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="-sec-ix-hidden:F_b690300c-0564-496f-a12d-3468f401e2cd;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Black-Scholes option-pricing formula.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; For SARs issued in the three months ended March 31, 2025 and March 31, 2024, the data and assumptions shown in the following table were used:&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:18pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:66.993%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.882%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.882%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;March 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Weighted-average fair value of grants&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;33.49&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;44.83&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Dividend yield&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Average risk-free interest rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4.3&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4.3&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Expected term (years)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Expected volatility&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;51.7&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;51.2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;&lt;/div&gt;&lt;p style="margin-left:18pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Company recognizes stock-based compensation expense ratably over the period from the grant date to the earlier of: (1) the vesting date of the award, or (2) the date the grantee is eligible to retire without forfeiting the award. For performance-based restricted stock and performance-based restricted stock units, expense is recognized ratably over the performance and vesting period of each tranche based on management&#x2019;s judgment of the ultimate award that is likely to be paid out based on the achievement of the&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;predetermined &lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;performance measures. For the employee stock purchase plan, compensation expense is recognized related to the discount on purchases. Stock-based compensation expense is included in &#x201c;Selling, general and administrative expenses&#x201d; in the Condensed Consolidated Statements of Comprehensive Income.&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; The following table summarizes the Company&#x2019;s stock-based compensation expense (in thousands):  &lt;/span&gt;&lt;/span&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;/p&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:66.993%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Stock appreciation rights&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;295&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;271&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Time-based restricted stock and restricted stock units&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;826&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,074&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Performance-based restricted stock and restricted stock units&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,140&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,642&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Employee stock purchase plan&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;52&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;166&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total stock-based compensation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,313&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3,153&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;&lt;/div&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Total unrecognized compensation cost related to unvested awards as of March 31, 2025 was $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;17.3&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million. The cost of these unvested awards is being recognized over the requisite vesting period of each award.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:CommonStockCapitalSharesReservedForFutureIssuance
      contextRef="C_d652431e-2d22-4305-bdfc-61faa29fe0e6"
      decimals="INF"
      id="F_41554acd-bcd6-4629-9e1a-39f3d181ba61"
      unitRef="U_shares">3669418</us-gaap:CommonStockCapitalSharesReservedForFutureIssuance>
    <us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_c7d52117-2aaa-4b3d-ba12-9d5a79e03265">&lt;p style="text-indent:22.5pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following table summarizes the Company&#x2019;s stock-based compensation grants for the three months ended March 31, 2025:&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:66.98%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.16%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:13.36%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.88%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Stock Awards&lt;br/&gt;Granted&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Weighted-&lt;br/&gt;Average&lt;br/&gt;Grant Price&lt;br/&gt;Per Share&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Time-based restricted stock units&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;65,750&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;67.29&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Performance-based restricted stock units (a)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;97,063&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;65.34&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Stock appreciation rights&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;43,597&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;67.33&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;&lt;p style="text-indent:22.5pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;div class="item-list-element-wrapper" style="margin-left:0.25in;display:flex;margin-top:0;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.25in;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:3.447919145106397%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;(a)&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Includes &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;75,210&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; of target performance-based restricted stock unit awards granted during the three months ended March 31, 2025, and adjustments of &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,093&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; and &lt;/span&gt;&lt;span style="font-size:9pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;20,760&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; to grants due to the actual performance level achieved for restricted stock and restricted stock units award&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;ed in 2024 and 2023, r&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:9pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;espectively.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;</us-gaap:ScheduleOfCompensationCostForShareBasedPaymentArrangementsAllocationOfShareBasedCompensationCostsByPlanTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="C_ddc4dbae-5041-4b42-8dc8-63e5332d6df4"
      decimals="0"
      id="F_a1d644c9-b5db-4d7e-99d5-3f1b67377e4d"
      unitRef="U_shares">65750</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <trex:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice
      contextRef="C_ddc4dbae-5041-4b42-8dc8-63e5332d6df4"
      decimals="2"
      id="F_6beb791e-f80d-4cf8-b86f-693b00f3b130"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">67.29</trex:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="C_a1c92c4d-427a-4d44-be00-f1bce5512360"
      decimals="0"
      id="F_50333f0d-fb90-41b8-a256-37344e17d625"
      unitRef="U_shares">97063</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <trex:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice
      contextRef="C_a1c92c4d-427a-4d44-be00-f1bce5512360"
      decimals="2"
      id="F_1d09f576-98d8-4aac-9d78-d22b521dcbb6"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">65.34</trex:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="C_f743b696-54dc-4203-bd4a-0991a2693a79"
      decimals="0"
      id="F_cb9e8acf-4683-4fa2-9f4a-7956ed08b622"
      unitRef="U_shares">43597</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <trex:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice
      contextRef="C_f743b696-54dc-4203-bd4a-0991a2693a79"
      decimals="2"
      id="F_225bccb1-d8ce-46f1-831a-1fed63f785f2"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">67.33</trex:ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionsEquityInstrumentsGrantedWeightedAverageGrantPrice>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="C_f92fe0b1-93df-4ed6-9f4f-7be715202df2"
      decimals="0"
      id="F_f3d1ad4d-9da3-4615-a5da-63399f35b63f"
      unitRef="U_shares">75210</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="C_31b4123d-22cf-4c7f-a15b-7682f885be6d"
      decimals="0"
      id="F_52664a29-a8f3-4314-a7e7-27fd2bab0424"
      unitRef="U_shares">1093</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="C_80baee2f-7e29-45b0-b70b-ac4ed431ae07"
      decimals="0"
      id="F_57c78024-9d8c-4343-a500-ade7d5811034"
      unitRef="U_shares">20760</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_3ac038a9-a3fb-4d4c-9127-6d040620ae70">&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The fair value of each SAR is estimated on the date of grant using a &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="-sec-ix-hidden:F_b690300c-0564-496f-a12d-3468f401e2cd;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Black-Scholes option-pricing formula.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; For SARs issued in the three months ended March 31, 2025 and March 31, 2024, the data and assumptions shown in the following table were used:&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="margin-left:18pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:66.993%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.882%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.882%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;March 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Weighted-average fair value of grants&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;33.49&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;44.83&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Dividend yield&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Average risk-free interest rate&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4.3&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;4.3&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Expected term (years)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;5&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Expected volatility&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;51.7&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;51.2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;%&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="C_f743b696-54dc-4203-bd4a-0991a2693a79"
      decimals="2"
      id="F_86ed317e-9b08-46dc-8e6d-87e16e26c5b2"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">33.49</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
      contextRef="C_7d9f7f54-d825-4f56-ae1e-d69927ec5cc9"
      decimals="2"
      id="F_1fdfe0f5-e8ad-4c2c-89f1-8b9c8996ec67"
      unitRef="U_UnitedStatesOfAmericaDollarsShare">44.83</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="C_f743b696-54dc-4203-bd4a-0991a2693a79"
      decimals="2"
      id="F_71d1377d-88a1-44f2-aa7c-83b6f4908c81"
      unitRef="U_pure">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate
      contextRef="C_7d9f7f54-d825-4f56-ae1e-d69927ec5cc9"
      decimals="2"
      id="F_0ae979e7-dc3d-497e-9c76-5d5eecd05c33"
      unitRef="U_pure">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="C_f743b696-54dc-4203-bd4a-0991a2693a79"
      decimals="3"
      id="F_ea9d9696-4d18-49f6-9267-b039b689171a"
      unitRef="U_pure">0.043</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate
      contextRef="C_7d9f7f54-d825-4f56-ae1e-d69927ec5cc9"
      decimals="3"
      id="F_a8e7b53a-8cdd-405c-9432-21342744ed7b"
      unitRef="U_pure">0.043</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="C_f743b696-54dc-4203-bd4a-0991a2693a79"
      id="F_a1f28d3a-79c3-44fd-891d-72775a65cd68">P5Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1
      contextRef="C_7d9f7f54-d825-4f56-ae1e-d69927ec5cc9"
      id="F_8df57609-ccb7-42df-9645-e7769ba244ad">P5Y</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="C_f743b696-54dc-4203-bd4a-0991a2693a79"
      decimals="3"
      id="F_c87287b2-6c0c-459f-b20e-ac72341c7f7c"
      unitRef="U_pure">0.517</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate
      contextRef="C_7d9f7f54-d825-4f56-ae1e-d69927ec5cc9"
      decimals="3"
      id="F_97988386-b08c-4e11-90c8-7f1a99566ef2"
      unitRef="U_pure">0.512</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_191c5c39-85b2-4586-9c86-1f1717332e22">&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; The following table summarizes the Company&#x2019;s stock-based compensation expense (in thousands):  &lt;/span&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:70.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:66.993%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.62%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:12.883000000000001%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="6" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Stock appreciation rights&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;295&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;271&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Time-based restricted stock and restricted stock units&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;826&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,074&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Performance-based restricted stock and restricted stock units&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,140&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,642&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Employee stock purchase plan&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;52&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;166&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0.01in;text-indent:10pt;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="margin-left:10pt;text-indent:0;font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Total stock-based compensation&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,313&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;3,153&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0.01in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0.01in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="C_f743b696-54dc-4203-bd4a-0991a2693a79"
      decimals="-3"
      id="F_4b38a75a-539c-4af2-b277-0a94403bbdbd"
      unitRef="U_USD">295000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="C_7d9f7f54-d825-4f56-ae1e-d69927ec5cc9"
      decimals="-3"
      id="F_a047616a-6f64-4e71-890a-7a699637d3ba"
      unitRef="U_USD">271000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="C_34213902-e621-4f3d-8d2c-cfc92fdbd907"
      decimals="-3"
      id="F_25e90b18-a12d-4eae-a09c-ed087190445e"
      unitRef="U_USD">826000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="C_f6b42be6-496b-4f49-b6d8-be98c482f21a"
      decimals="-3"
      id="F_94f12ca1-c806-46be-8666-b69f53ed735a"
      unitRef="U_USD">1074000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="C_20e88d50-db92-4dbb-b242-24b346809eca"
      decimals="-3"
      id="F_7427a851-c8c0-4d2e-88e0-4931bd60fb98"
      unitRef="U_USD">1140000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="C_c84c44b6-a340-4f24-8662-14255ab724c7"
      decimals="-3"
      id="F_843403c1-06ba-42cb-bbf6-de298aad4875"
      unitRef="U_USD">1642000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="C_b108950e-4905-4cc7-8ea2-f7bbb9eea98d"
      decimals="-3"
      id="F_062e5261-2a94-4fff-812e-d4817ee5c4a7"
      unitRef="U_USD">52000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="C_3acb3ff4-cd1b-4533-b0bb-fc9957ba3cbd"
      decimals="-3"
      id="F_86e96799-cdd6-4ffb-bd95-4790df266f8e"
      unitRef="U_USD">166000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-3"
      id="F_11b5fbb7-168a-45d3-82d4-1027adbdfce2"
      unitRef="U_USD">2313000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-3"
      id="F_b413a455-37fb-4404-8df4-0e316ba44f02"
      unitRef="U_USD">3153000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-5"
      id="F_2ed6f343-4dc8-4b90-bd3b-84abc7d8b5b3"
      unitRef="U_USD">17300000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_b2f5c055-fb18-49ed-8cb6-92b2df55ecc9">&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;15.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;INCOME TAXES&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company&#x2019;s effective tax rate for the three months ended March 31, 2025 and March 31, 2024, was &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;25.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;% and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;25.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;%, which resulted in income tax expense of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;21.2&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;29.9&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million, respectively.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;During the three months ended March 31, 2025 and March 31, 2024, the Company realized $(&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.1&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;) million and $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;0.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million, respectively, of excess tax expense and excess tax benefit from stock-based awards and recorded a corresponding expense and benefit to income tax expense.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company analyzes its deferred tax assets each reporting period, considering all available positive and negative evidence in determining the expected realization of those deferred tax assets. As of March 31, 2025, the Company maintains a valuation allowance of $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2.6&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million against deferred tax assets primarily related to state tax credits it estimates will expire before they are realized.&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company operates in multiple tax jurisdictions, and, in the normal course of business, its tax returns are subject to examination by various taxing authorities. Such examinations may result in future assessments by these taxing authorities, and the Company accrues a liability when it believes that it is more likely than not that benefits of tax positions will not be realized. The Company believes that adequate provisions have been made for all tax returns subject to examination. As of March 31, 2025, for certain tax jurisdictions tax years &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="-sec-ix-hidden:F_71bdfe16-c7bd-4372-91d0-8fa8ccf132d3;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;2020 through 2024&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; remain subject to examination. The Company believes that adequate provisions have been made for all tax returns subject to examination. Sales made to foreign distributors are not taxable in any foreign jurisdiction as the Company does not have a taxable presence in any foreign jurisdiction.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="3"
      id="F_03f13dc0-431b-46a0-8ddb-00bfce81875b"
      unitRef="U_pure">0.259</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="3"
      id="F_b1739dae-a743-4948-a97b-6707dfcc1199"
      unitRef="U_pure">0.252</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-5"
      id="F_c3fe002b-26ad-4850-89b4-3aaef8c8dcc7"
      unitRef="U_USD">21200000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-5"
      id="F_4b427993-af8c-4e78-97fe-df8420dbe0f7"
      unitRef="U_USD">29900000</us-gaap:IncomeTaxExpenseBenefit>
    <trex:ExcessTaxBenefitsFromStockBasedAwards
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="-5"
      id="F_368d7c4c-7174-40ac-875c-bf43d29bb431"
      unitRef="U_USD">-100000</trex:ExcessTaxBenefitsFromStockBasedAwards>
    <trex:ExcessTaxBenefitsFromStockBasedAwards
      contextRef="C_26a957f0-4cb5-4f31-bb80-66bee2ce252c"
      decimals="-5"
      id="F_d70bf3ed-ce3e-4e7b-81ee-681e1a326e0a"
      unitRef="U_USD">600000</trex:ExcessTaxBenefitsFromStockBasedAwards>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="C_ea8aac85-9e25-4d15-8847-2cc33b9a63a9"
      decimals="-5"
      id="F_e0fa45d9-2645-43af-a794-55d208a18730"
      unitRef="U_USD">2600000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:SegmentReportingDisclosureTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_dc9b2356-a2b9-424f-a0a9-1959f9c54bb1">&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.30972222222222223in;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.13%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;16.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;SEGMENT INFORMATION&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company operates in &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;one&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; reportable segment, Trex Residential, with resource allocation and assessment of financial performance based on a consolidated basis.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:8pt;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Trex Residential manufactures composite decking and railing and related outdoor living products marketed under the brand name Trex&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#xae;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;. The products are sold to its distributors and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;two&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; national retailers who, in turn, sell primarily to the residential market, which includes replacement, remodeling and new construction.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:2pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company&#x2019;s reportable segments are determined in accordance with its internal management structure, which is based on operations. The Company has identified its President and Chief Executive Officer as the &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="-sec-ix-hidden:F_abeb9af2-c314-4509-a5bf-4f65d81e3fad;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Chief Operating Decision Maker&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; (CODM). The Company&#x2019;s CODM has final authority over resource allocation decisions and performance assessments and makes key operating decisions. &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The primary objective of the CODM is to optimize positive Company-wide performance and financial results. The CODM evaluates segment performance primarily based on net income and net sales. The CODM uses net income to assess performance and allocate resources as this measure provides insight into all aspects of the segment&#x2019;s operations and overall success of the segment for a given period. The CODM also uses net sales to assess performance and allocate resources as this measure represents the amount of business the segment engaged in during a given period of time, is an indicator of market growth and acceptance of segment products, and represents the segment&#x2019;s customers&#x2019; spending habits along with the amount of product the segment sells relative to its competitors.&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; In addition, the CODM reviews significant segment expenses with a  primary focus on cost of sales and total selling, general, and administrative expenses. These measures are provided in the accompanying Condensed Consolidated Statements of Comprehensive Income. Segment assets are reported on the Condensed Consolidated Balance Sheets.&lt;/span&gt;&lt;/p&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:NumberOfReportableSegments
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="INF"
      id="F_6eb11c9a-7ead-49cd-b000-9454156af5fc"
      unitRef="U_Segment">1</us-gaap:NumberOfReportableSegments>
    <trex:NumberOfSalesRetailers
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      decimals="INF"
      id="F_78758b14-7f14-4647-a01d-36eb82223e00"
      unitRef="U_Retailer">2</trex:NumberOfSalesRetailers>
    <us-gaap:SegmentReportingCodmProfitLossMeasureHowUsedDescription
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_5f2239e7-7bd8-4632-a984-de96fedb635c">The primary objective of the CODM is to optimize positive Company-wide performance and financial results. The CODM evaluates segment performance primarily based on net income and net sales. The CODM uses net income to assess performance and allocate resources as this measure provides insight into all aspects of the segment&#x2019;s operations and overall success of the segment for a given period. The CODM also uses net sales to assess performance and allocate resources as this measure represents the amount of business the segment engaged in during a given period of time, is an indicator of market growth and acceptance of segment products, and represents the segment&#x2019;s customers&#x2019; spending habits along with the amount of product the segment sells relative to its competitors.</us-gaap:SegmentReportingCodmProfitLossMeasureHowUsedDescription>
    <trex:SeasonalityDisclosureTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_87e8d746-e3ac-44cb-969c-b34b7c07793c">&lt;p style="text-indent:-24.5pt;padding-left:24.5pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;17.	SEASONALITY&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The operating results for Trex have historically varied from quarter to quarter. Seasonal, erratic or prolonged adverse weather conditions may reduce the level of home improvement and construction activity and can shift sales of its products to a later period or decrease overall sales in affected locations. As part of its normal business practice and consistent with industry practice, Trex has historically offered incentive programs to its distributors and dealers to build inventory levels before the start of the prime deck-building season in order to ensure adequate availability of its product to meet anticipated seasonal consumer demand. The seasonal effects are often offset by the positive effect of the incentive programs.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;</trex:SeasonalityDisclosureTextBlock>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_76e83db3-e9f6-4b0b-83e3-0f5861b34d24">&lt;div class="item-list-element-wrapper" style="display:flex;margin-top:10pt;justify-content:flex-start;align-items:baseline;margin-bottom:0;min-width:0.3402777777777778in;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:4.537%;word-break:keep-all;display:inline-flex;justify-content:flex-start;"&gt;18.&lt;/span&gt;&lt;div style="width:100%;display:inline;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;COMMITMENTS AND CONTINGENCIES&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p id="ole_link15" style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span id="ole_link16"&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;Product Warranty&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company warrants that for the applicable warranty period its products, when properly installed, used and maintained, will be free from material defects in workmanship and materials and its decking, cladding, fascia and railing products will not split, splinter, rot or suffer structural damage from termites or fungal decay.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Products sold on or after January 1, 2023: The warranty period for residential use is &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;50&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; years for Transcend&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#xae;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; decking, &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;35&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; years for Select&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#xae;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; decking and Universal Fascia, and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;25&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; years for Enhance&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#xae;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; decking and Transcend, Select, Enhance and Signature&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;vertical-align:super;font-size:6.7pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#xae;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; railing. The warranty period for commercial use is &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;10&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; years, excluding Signature railing and Transcend cladding, which each have a warranty period of&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; 25&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; years. The Company further warrants that Trex Transcend, Trex Enhance and Trex Select decking and cladding and Universal Fascia products will not fade in color from light and weathering exposure more than a certain amount and will be resistant to permanent staining from food and beverage substances or mold and mildew, provided the stain is cleaned within seven days of appearance, for the warranty period referred to above. If there is a breach of such warranties, the Company has an obligation either to replace the defective product or refund the purchase price.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;Products sold prior to January 1, 2023: The warranty period is &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;25&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; years for residential use and &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;10&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; years for commercial use. With respect to Trex Signature railing, the warranty period is &lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;25&lt;/span&gt;&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; years for both residential and commercial use. The Company further warrants that Trex Transcend, Trex Enhance, Trex Select and Universal Fascia products will not fade in color more than a certain amount and will be resistant to permanent staining from food substances or mold, provided the stain is cleaned within seven days of appearance, for the warranty period referred to above. If there is a breach of such warranties, the Company has an obligation either to replace the defective product or refund the purchase price.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company maintains a warranty reserve for the settlement of its product warranty claims. The Company accrues for the estimated cost of product warranty claims at the time revenue is recognized based on such factors as historical claims experience and estimated future claims. Management reviews and adjusts these estimates, if necessary, based on the differences between actual experience and historical estimates. Additionally, the Company accrues for warranty costs associated with occasional or unanticipated product quality issues if a loss is probable and can be reasonably estimated, as necessary.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company continues to receive and settle claims for decking products manufactured at its Nevada facility prior to 2007 that exhibit surface flaking and maintains a warranty reserve to provide for the settlement of these claims. Estimating the warranty reserve for surface flaking claims requires management to estimate the number of claims to be settled with payment and the average cost to settle each claim. The Company monitors surface flaking claims activity each quarter for indications that its estimates require revision.&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company believes its product warranty and surface flaking reserves at March 31, 2025 are sufficient to cover future warranty obligations. &lt;/span&gt;&lt;span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following is a reconciliation of the Company&#x2019;s product warranty and surface flaking reserves (in thousands):  &lt;/span&gt;&lt;/span&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;/p&gt;&lt;div&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:80.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:57.477%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.399%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:10.776%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.399%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:10.776%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.399%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:10.776%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Product Warranty&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Surface Flaking&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Beginning balance, January 1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;15,596&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;7,239&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;22,835&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Provisions and changes in estimates&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,550&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,550&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Settlements made during the period&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,238&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;356&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,594&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Ending balance, March 31&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;16,908&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6,883&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;23,791&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;div style="font-size:10pt;font-family:Times New Roman;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:80.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:57.477%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.399%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:10.776%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.399%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:10.776%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.399%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:10.776%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Product Warranty&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Surface Flaking&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Beginning balance, January 1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;12,066&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;10,112&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;22,178&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Provisions and changes in estimates&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,068&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,068&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Settlements made during the period&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;924&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;188&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,112&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Ending balance, March 31&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;13,210&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;9,924&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;23,134&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;&lt;/div&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;Legal Matters&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The Company has lawsuits, as well as other claims, pending against it which are ordinary routine litigation and claims incidental to the business. Management has evaluated the merits of these lawsuits and claims and believes that their ultimate resolution will not have a material effect on the Company&#x2019;s consolidated financial condition, results of operations, liquidity or competitive position.&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-style:italic;font-kerning:none;min-width:fit-content;"&gt;Industrial Revenue Bonds&lt;/span&gt;&lt;/p&gt;&lt;p style="text-indent:22.3pt;font-size:10pt;margin-top:10pt;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;In October 2021, the Company announced plans to add a third manufacturing facility located in Little Rock, Arkansas (Little Rock). Construction on the new facility began in the second quarter of 2022. In connection with the construction of the new facility, during 2024 the Company and Little Rock entered into an agreement in which Little Rock agreed to issue up to $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;450&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million of its industrial revenue bonds (IRBs) for the purpose of constructing a manufacturing facility. Under the agreement, the Company transferred ownership of the facility to Little Rock and simultaneously leased the related asset from Little Rock. The Company is also the purchaser of the IRBs and, therefore, is the bondholder as well as the borrower/lessee of the Little Rock facility purchased with the IRB proceeds. As a result of the agreement, the Company was able to reduce the cost of certain state and local tax expenditures for twenty years. The Company has a purchase option included in the lease agreement for below the fair value of the asset, which prevents the transfer of the asset to Little Rock from being recognized as a sale. Furthermore, the Company has not derecognized the transferred asset and continues to recognize it in property, plant and equipment in the Consolidated Balance Sheets. The Company has the right and intends to set-off any obligations to make payments under the finance liability, with proceeds due from the IRBs. The liability and IRB asset are equal and are reported net in the Consolidated Balance Sheets. As of March 31, 2025, the gross asset and liability associated with the IRBs was $&lt;/span&gt;&lt;span style="font-size:10pt;font-family:Times New Roman;color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;100&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt; million.&lt;/span&gt;&lt;/p&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <trex:WarrantyPeriod
      contextRef="C_160fc5cf-e7da-4528-8901-3fb706c9d7be"
      id="F_346401d1-11bb-49d4-9cc0-f59fc244aec7">P50Y</trex:WarrantyPeriod>
    <trex:WarrantyPeriod
      contextRef="C_21f532e7-6179-4e31-8bff-9c76efc3cee5"
      id="F_5f6e83bb-7fc8-4ad7-a527-1c0fbc9fd4b4">P35Y</trex:WarrantyPeriod>
    <trex:WarrantyPeriod
      contextRef="C_000977a8-6a3d-4ec8-8991-fa651366adfd"
      id="F_5f451c26-b781-40f0-812a-75ae7cfcef54">P25Y</trex:WarrantyPeriod>
    <trex:WarrantyPeriod
      contextRef="C_30aa8c2f-c604-4c0f-ae59-c6e9f26b2113"
      id="F_1453b2d1-1295-40f0-82f8-35c09fb5bc19">P10Y</trex:WarrantyPeriod>
    <trex:WarrantyPeriod
      contextRef="C_74dbf428-7f53-41d2-945e-748db7ec532d"
      id="F_0303df73-6981-4e8f-8894-eea666969eb2">P25Y</trex:WarrantyPeriod>
    <trex:WarrantyPeriod
      contextRef="C_06216a84-367d-453b-97af-0e5db4ae9937"
      id="F_91a289a0-61fb-40f1-bb5d-30fce7d81338">P25Y</trex:WarrantyPeriod>
    <trex:WarrantyPeriod
      contextRef="C_f1fd57c9-5905-4cc5-bd50-cffe8a2ad329"
      id="F_085a0efb-e11c-47a9-81fa-fe7f94e6f0db">P10Y</trex:WarrantyPeriod>
    <trex:WarrantyPeriod
      contextRef="C_479b12da-f306-4c52-8211-3463e0b72884"
      id="F_0708a6ed-2d95-41e8-b028-c1a8acbccc26">P25Y</trex:WarrantyPeriod>
    <us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_4a7e491d-a267-4ba0-8703-c087c9215c7a">&lt;span style="color:#000000;white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;The following is a reconciliation of the Company&#x2019;s product warranty and surface flaking reserves (in thousands):  &lt;/span&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:80.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:57.477%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.399%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:10.776%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.399%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:10.776%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.399%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:10.776%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31, 2025&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Product Warranty&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Surface Flaking&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Beginning balance, January 1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;15,596&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;7,239&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;22,835&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Provisions and changes in estimates&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,550&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,550&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Settlements made during the period&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,238&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;356&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,594&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Ending balance, March 31&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;16,908&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;6,883&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;23,791&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-size:10pt;font-family:Times New Roman;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;
        &lt;table style="margin-left:auto;border-spacing:0;table-layout:auto;width:80.0%;border-collapse:separate;margin-right:auto;"&gt;
         &lt;tr style="visibility:collapse;"&gt;
          &lt;td style="width:57.477%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.399%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:10.776%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.399%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:10.776%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1.399%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:10.776%;box-sizing:content-box;"&gt;&lt;/td&gt;
          &lt;td style="width:1%;box-sizing:content-box;"&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="10" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Three Months Ended March 31, 2024&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:8pt;background-color:#ffffff;word-break:break-word;white-space:pre-wrap;text-align:left;"&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Product Warranty&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Surface Flaking&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td colspan="2" style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-weight:bold;font-kerning:none;min-width:fit-content;"&gt;Total&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:8pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:center;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Beginning balance, January 1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;12,066&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;10,112&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;22,178&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Provisions and changes in estimates&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,068&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#x2014;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;2,068&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#dbe5f1;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Settlements made during the period&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;924&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;188&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;(&lt;/span&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;1,112&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:0.5pt solid #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
         &lt;tr style="height:10pt;background-color:#ffffff;word-break:break-word;"&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:top;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;Ending balance, March 31&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;13,210&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;9,924&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #ffffff03;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="color:#000000;font-kerning:none;min-width:fit-content;"&gt;$&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:pre-wrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;text-align:center;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:right;"&gt;&lt;span style="color:#000000;white-space:pre-wrap;font-kerning:none;min-width:fit-content;"&gt;23,134&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
          &lt;td style="padding-top:0in;white-space:nowrap;padding-left:0in;vertical-align:bottom;padding-bottom:0in;border-bottom:2.25pt double #000000;padding-right:0in;"&gt;&lt;p style="font-size:10pt;margin-top:0;font-family:Times New Roman;margin-bottom:0;text-align:left;"&gt;&lt;span style="font-kerning:none;min-width:fit-content;"&gt;&#160;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;
         &lt;/tr&gt;
        &lt;/table&gt;</us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="C_727b1285-ee45-495e-829c-bdb87118d3d5"
      decimals="-3"
      id="F_2922dc23-8d5d-4a0e-a4fe-4a8ea7f7d4dd"
      unitRef="U_USD">15596000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="C_467aa8b1-b247-4454-a59e-c4039b58e300"
      decimals="-3"
      id="F_5b871277-fbea-4568-9e83-bc0a99ab96a8"
      unitRef="U_USD">7239000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="C_3bdbff76-38f1-4b53-ac1e-296051ee7de7"
      decimals="-3"
      id="F_06b9ed58-6958-4001-bdba-53817dc4c51a"
      unitRef="U_USD">22835000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="C_9e6647df-2091-42e7-a3a1-417f8a828b33"
      decimals="-3"
      id="F_c679e0ac-9f32-498f-bf74-383c9dc83876"
      unitRef="U_USD">2550000</us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="C_236f35f2-5fcc-46c3-beb9-5a5363691b17"
      decimals="-3"
      id="F_e0a9036e-71c3-4a95-a307-ba56147b1b5e"
      unitRef="U_USD">0</us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="C_5c21fb3f-d14b-4d2e-abf1-74d1a4c37a9a"
      decimals="-3"
      id="F_b523cf5a-0cda-4989-b7ab-6d03a6d3766b"
      unitRef="U_USD">2550000</us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="C_9e6647df-2091-42e7-a3a1-417f8a828b33"
      decimals="-3"
      id="F_203aebc2-d3e3-4127-b496-d051dea77d5d"
      unitRef="U_USD">1238000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="C_236f35f2-5fcc-46c3-beb9-5a5363691b17"
      decimals="-3"
      id="F_8c205fdb-d73e-42ee-976e-ed8ed061ea06"
      unitRef="U_USD">356000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="C_5c21fb3f-d14b-4d2e-abf1-74d1a4c37a9a"
      decimals="-3"
      id="F_35204037-7262-489e-8029-ea43010ae7d5"
      unitRef="U_USD">1594000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="C_0a11d0ba-7d64-4bae-a644-803cfb6397ea"
      decimals="-3"
      id="F_5441b927-f830-4f81-8ffa-1dc5ab3c8f37"
      unitRef="U_USD">16908000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="C_75b5cb2b-a5f5-4fdd-805a-247c93d565e7"
      decimals="-3"
      id="F_50622217-84e0-4aa6-9af3-9910f0380c13"
      unitRef="U_USD">6883000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="C_5b5827e5-9779-4bf2-80c4-7707e58e780b"
      decimals="-3"
      id="F_2002795a-a0ca-4d01-b3d9-1645312bdae6"
      unitRef="U_USD">23791000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="C_4380ab5c-971c-4ab9-9e80-c371ba493920"
      decimals="-3"
      id="F_73979d37-fcae-4670-8078-067869e98cdc"
      unitRef="U_USD">12066000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="C_8e7a9ef9-30fb-4364-9d1f-9b06b42b6548"
      decimals="-3"
      id="F_17e668b3-7931-41f1-8b80-66700d3d7710"
      unitRef="U_USD">10112000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="C_b0f907b9-5f76-4a7b-938c-3aacc09ca10d"
      decimals="-3"
      id="F_4fab4b7e-dbb5-4381-80b5-64465b2f6825"
      unitRef="U_USD">22178000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="C_32cb1923-a423-4669-a0b7-d92694543929"
      decimals="-3"
      id="F_1c3c73cb-d433-4b10-8de3-073c5e6e25c1"
      unitRef="U_USD">2068000</us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="C_7e158bcd-195f-4d12-b933-d56b8ae0fe81"
      decimals="-3"
      id="F_564144fc-2821-4933-a7f0-9de1d2ed70e1"
      unitRef="U_USD">0</us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="C_46f48da5-041d-4ddf-8368-9aa80a1bec5a"
      decimals="-3"
      id="F_fd73997f-8fae-41a9-b095-7bba3d58da6b"
      unitRef="U_USD">2068000</us-gaap:StandardProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="C_32cb1923-a423-4669-a0b7-d92694543929"
      decimals="-3"
      id="F_623aa8e0-1c29-4712-8a5b-7eee6d46ebad"
      unitRef="U_USD">924000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="C_7e158bcd-195f-4d12-b933-d56b8ae0fe81"
      decimals="-3"
      id="F_72b6c732-66d1-48d8-aee4-c5e3eb7b0024"
      unitRef="U_USD">188000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrualPayments
      contextRef="C_46f48da5-041d-4ddf-8368-9aa80a1bec5a"
      decimals="-3"
      id="F_92c69b11-22cb-4632-817d-ebca50cd3073"
      unitRef="U_USD">1112000</us-gaap:StandardProductWarrantyAccrualPayments>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="C_235e72a1-2df5-4423-a57c-d4fc2831663b"
      decimals="-3"
      id="F_4f83dd0c-ba51-494e-bd01-2ab543768894"
      unitRef="U_USD">13210000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="C_713035c9-88eb-4178-861f-7d66792d62fe"
      decimals="-3"
      id="F_7a00547d-46d8-4f75-9233-088960298730"
      unitRef="U_USD">9924000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:StandardProductWarrantyAccrual
      contextRef="C_1042da33-40cf-4172-9d13-cbe43571d3a9"
      decimals="-3"
      id="F_8ef111c5-3099-42c5-bb42-e4c6bc341dde"
      unitRef="U_USD">23134000</us-gaap:StandardProductWarrantyAccrual>
    <us-gaap:DebtInstrumentCarryingAmount
      contextRef="C_339092ed-217a-4730-8c0d-5d5e4d97ef57"
      decimals="-6"
      id="F_704084b4-6c7a-45cc-ab79-0d51e79fee6f"
      unitRef="U_USD">450000000</us-gaap:DebtInstrumentCarryingAmount>
    <trex:GrossAssetAndLiability
      contextRef="C_339092ed-217a-4730-8c0d-5d5e4d97ef57"
      decimals="-6"
      id="F_413a21b3-8ee9-4f38-b59f-2df25c64f3f5"
      unitRef="U_USD">100000000</trex:GrossAssetAndLiability>
    <ecd:Rule10b51ArrAdoptedFlag
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_8c84cdd0-e619-4f53-b9f1-86e33f4811fe">false</ecd:Rule10b51ArrAdoptedFlag>
    <ecd:NonRule10b51ArrAdoptedFlag
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_0ea6a11b-8922-4927-be50-daf0c9dba495">false</ecd:NonRule10b51ArrAdoptedFlag>
    <ecd:Rule10b51ArrTrmntdFlag
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_326ca7cf-8d11-4e28-9cde-8e5b0f3ca3b7">false</ecd:Rule10b51ArrTrmntdFlag>
    <ecd:NonRule10b51ArrTrmntdFlag
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_41bcff31-605a-4066-9131-d5c8078cdb24">false</ecd:NonRule10b51ArrTrmntdFlag>
    <trex:Rule10B51ArrModifiedFlag
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_34f2067c-3b12-41f3-95ce-acaf77f60fb5">false</trex:Rule10B51ArrModifiedFlag>
    <trex:NonRule10B51ArrModifiedFlag
      contextRef="C_f9f6c2f5-e7ce-4f04-848f-dbda9a40b146"
      id="F_5188a405-9fc2-4924-a419-de8c03131322">false</trex:NonRule10B51ArrModifiedFlag>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
